EP1854083B1 - Kamera zum verfolgen von objekten - Google Patents
Kamera zum verfolgen von objekten Download PDFInfo
- Publication number
- EP1854083B1 EP1854083B1 EP06707263A EP06707263A EP1854083B1 EP 1854083 B1 EP1854083 B1 EP 1854083B1 EP 06707263 A EP06707263 A EP 06707263A EP 06707263 A EP06707263 A EP 06707263A EP 1854083 B1 EP1854083 B1 EP 1854083B1
- Authority
- EP
- European Patent Office
- Prior art keywords
- camera
- tracking
- unit
- image
- data
- 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.)
- Not-in-force
Links
Images
Classifications
-
- G—PHYSICS
- G08—SIGNALLING
- G08B—SIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
- G08B13/00—Burglar, theft or intruder alarms
- G08B13/18—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength
- G08B13/189—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems
- G08B13/194—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems
-
- G—PHYSICS
- G08—SIGNALLING
- G08B—SIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
- G08B13/00—Burglar, theft or intruder alarms
- G08B13/18—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength
- G08B13/189—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems
- G08B13/194—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems
- G08B13/196—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems using television cameras
- G08B13/19602—Image analysis to detect motion of the intruder, e.g. by frame subtraction
-
- G—PHYSICS
- G08—SIGNALLING
- G08B—SIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
- G08B13/00—Burglar, theft or intruder alarms
- G08B13/18—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength
- G08B13/189—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems
- G08B13/194—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems
- G08B13/196—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems using television cameras
- G08B13/19602—Image analysis to detect motion of the intruder, e.g. by frame subtraction
- G08B13/19606—Discriminating between target movement or movement in an area of interest and other non-signicative movements, e.g. target movements induced by camera shake or movements of pets, falling leaves, rotating fan
-
- G—PHYSICS
- G08—SIGNALLING
- G08B—SIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
- G08B13/00—Burglar, theft or intruder alarms
- G08B13/18—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength
- G08B13/189—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems
- G08B13/194—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems
- G08B13/196—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems using television cameras
- G08B13/19602—Image analysis to detect motion of the intruder, e.g. by frame subtraction
- G08B13/19608—Tracking movement of a target, e.g. by detecting an object predefined as a target, using target direction and or velocity to predict its new position
-
- G—PHYSICS
- G08—SIGNALLING
- G08B—SIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
- G08B13/00—Burglar, theft or intruder alarms
- G08B13/18—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength
- G08B13/189—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems
- G08B13/194—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems
- G08B13/196—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems using television cameras
- G08B13/19654—Details concerning communication with a camera
- G08B13/19656—Network used to communicate with a camera, e.g. WAN, LAN, Internet
-
- G—PHYSICS
- G08—SIGNALLING
- G08B—SIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
- G08B13/00—Burglar, theft or intruder alarms
- G08B13/18—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength
- G08B13/189—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems
- G08B13/194—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems
- G08B13/196—Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems using television cameras
- G08B13/19663—Surveillance related processing done local to the camera
Definitions
- the invention relates to a camera for tracking objects with an image sensor unit for generating image data and to a processing unit for processing the image data transferred from the image sensor unit to the processing unit.
- the invention also relates to a multi-camera system having at least two cameras and to a method for processing image data in a camera for tracking objects.
- Tracking applications based on a network of distributed cameras are becoming increasingly popular in the field of security technology for monitoring airports, train stations, museums or public places, as well as in the field of industrial image processing in production lines and vision-guided robots.
- Traditional centralized approaches have many disadvantages here.
- Today's systems typically transmit the complete raw image stream of the camera sensor over expensive and distance-limited connections to a central computer and then have to process all there become.
- the cameras are thus typically regarded only as simple sensors and the processing takes place only after elaborate transmission of the raw video stream. This concept quickly reaches its limits in multi-camera systems and cameras with high resolutions and / or frame rates.
- European Patent Application EP 1 916 639 A2 discloses a camera for monitoring objects, the camera itself having a processing unit within a camera housing. One or more routines can be processed by the processing unit in order to detect specific movement patterns and / or objects. For example, the camera may be programmed to ignore the movements of small animals or inanimate objects such as fans, curtains, and the like, while still detecting movements of other objects such as opening doors, windows, and the like.
- the invention is thus based on the problem to provide an object tracking by cameras, which is able to work with multiple cameras and bandwidth-limited networks.
- a camera for tracking objects, with an image sensor unit for generating image data and a processing unit for processing the image data transferred from the image sensor unit to the processing unit, wherein the processing unit has an ROI selection unit for selecting image areas of interest for the object tracking and a tracking unit in order to determine tracking data of objects to be tracked on the basis of the image data, wherein the tracking data can be output at a signal output of the camera and wherein the tracking data is opposite to the quantity of image data generated by the image sensor unit have a significantly reduced amount of data, in particular reduced by about a factor of 1000.
- the processing of the image data thus already takes place in the camera, so that it is not necessary to transmit the complete, raw video stream in full resolution to an external processing unit. Instead, only the resulting tracking data is transmitted.
- ROI Region of Interest
- the image data to be processed is already severely limited in its amount, so that the processing of the data can be done in real time, which is of great importance in tracking applications. Since only the resulting data has to be transmitted by the camera, the use of standard network connections becomes possible in the first place.
- no external computer is required to calculate the tracking data, as this is already done inside the camera. An optionally existing central computer can then be used for higher-level tasks.
- the selection of image areas which are of interest for object tracking and, on the other hand, the calculation of the tracking data within the camera contributes to the considerable reduction of the amount of data to be transmitted according to the invention.
- a camera image in VGA resolution requires about one third of the 100 Mbit / s standard Ethernet bandwidth, which is achieved without the use of the so-called Bayer mosaic, otherwise the triple bandwidth is needed.
- Bayer mosaic the triple bandwidth is needed.
- a reduction to a few hundred kilobits per second is made possible, since only the results are transmitted. Since the raw video stream according to the invention is no longer limited by the bandwidth of the connection to the outside, sensors with very high spatial and lateral resolution can be used in the camera according to the invention.
- ROI selection unit the current camera image only on selected and, for example, dynamic evaluated changing regions. This requires region-of-interest (ROI) capable camera sensors, such as CMOS sensors.
- ROI region-of-interest
- the tracking data are provided in the form of a particular approximated probability density function.
- the probability density function is approximated by a plurality of nodes.
- the target data exclusively of interest for a tracking application such as position and speed of an object to be tracked, are calculated and then output by the camera.
- the approximation of the probability density function by a plurality of support points whose position and number may be adaptively changed a significant reduction of the computational effort to be performed is achieved. Nevertheless, it has been shown that a precision sufficient for tracking applications can be achieved.
- parallel processing means are provided in the processing unit for the parallel processing of the interpolation points of the probability density function and data dependent thereon.
- the tracking unit implements a so-called particle filter, in which a probability density function (p (X t
- X t denotes the state at time t and Z t all measurements up to and including time t.
- the probability density function is sampled and thus new interpolation points for approximating the state vector X t are determined.
- the new state vector X t of an object to be tracked is determined per reference point on the basis of old measurements Z t-1 and an old state vector X t-1 and taking into account a stored motion model, and in the measurement step the new state vector X t is taken into account with a new measurement weighted.
- Z t ) resulting from all new state vectors is newly approximated by interpolation points.
- the tracking unit transmits tracking data of objects to be tracked, in particular a prediction comparison object, to the ROI selection unit in order to select the image areas of interest for the processing as a function of the tracking data.
- the image areas of interest By selecting the image areas of interest on the basis of tracking data, it can be ensured with high probability that only relevant image areas are evaluated. For example, it is possible to use the tracking data to calculate back to a comparison object of the object to be tracked, and it is then decided on the basis of this comparison object which image areas from the current camera image should be selected. In the case of an object to be tracked, which moves at a constant speed, the comparison object would thus correspond to the image in the last camera shot, only its position would be shifted in contrast.
- the prediction comparison object is generated by means of a stored parametric model which is adaptively adaptable.
- the image data of the image area selected by the ROI selection unit is converted into a color histogram in the processing unit and the tracking unit determines the tracking data on the basis of the color histogram.
- a color histogram has advantages in terms of robustness of the processing algorithms in terms of rotations, partial occlusion and deformation.
- the HSV color space hue saturation value
- the RGB color space red-green-blue
- the CMY color space cyan-magenta-yellow
- the ROI selection unit controls the image sensor unit as a function of the tracking data in such a way that only those image data that corresponds to the image areas selected by the ROI selection unit are transferred from the image sensor unit to the processing unit.
- the bandwidth from the sensor to the processing hardware can be significantly reduced by transferring only the combination of image areas at all necessary for processing, which is necessary for the tracking algorithm. This happens regardless of the physical resolution of the sensor. These regions of interest are generated dynamically from frame to frame and transmitted to the sensor. Of course, the sensor must allow such direct access to image areas, but this is the case with today's CMOS sensors.
- the image sensor unit and the processing unit are integrated in a common housing.
- the processing unit has a network unit.
- the camera according to the invention can thereby be integrated into a network, for example a wireless network, without problems. That this is possible at all, is due to the very low bandwidth in the invention, which is required for a transmission of the results calculated in the camera to the outside.
- a control unit and setting means are provided in order to change setting parameters of the camera, in particular alignment, image detail and magnification, as a function of the tracking data.
- a control unit in the camera can then also carry out the tracking of the camera. It is essential that no signal transmission to the outside is required for this purpose. The failure of a network to which the camera is connected, is thus not detectable from the outside. Even if so no more connection from the camera to a central The evaluation station is maintained, is maintained by the subsequent tracking of the camera, the impression of continuous monitoring, which, once the connection is established again, can be continued seamlessly.
- the method according to the invention it is possible to transmit only the result data of an object tracking from the camera to the outside, so that thereby already the transmission bandwidth required to the outside is substantially reduced.
- only those image data are selected for the processing, which contain with increased probability information about objects to be tracked, for example by means of a feedback of the tracking data to a selection unit. This creates the opportunity to realize an object tracking by means of cameras even with high spatial and temporal resolution in real time.
- the step of selecting regions of the image data includes driving the image sensor unit in such a way that only image data are transferred from the image sensor unit to the processing unit, where there is an increased probability that they contain information about objects to be tracked.
- the amount of image data to be transmitted by the image sensor unit can be significantly reduced.
- the step of generating tracking data comprises approximating a probability density function by means of a plurality of interpolation points.
- circuits for processing the individual support points in hardware or software can be executed in parallel, so that a very fast generation of the tracking data is possible.
- the step of generating tracking data includes the generation of image data of a comparison object based on a probability density function of the objects to be tracked and at least one stored parametric model of the objects to be tracked.
- the calculated tracking results can be converted back into image data and this image data of a comparison object can then be compared with the current camera image to evaluate the quality of the tracking results and adjust them if necessary.
- the image data of the comparison object can be used to select only those image data by means of the selection unit, which essentially correspond to the image detail of the comparison object.
- a multi-camera system having at least two cameras according to the invention, in which each camera has a network unit and the at least two cameras are connected to one another via a network, in particular Ethernet or WLAN.
- multi-camera systems with the cameras according to the invention can be realized on the basis of standard network applications. This is also possible with wireless network connections, for example.
- the communication over the network can of course be bidirectional.
- the cameras can not only output the result data, but also receive information about objects to be tracked or control signals for setting and aligning the camera optics via the network.
- the processing unit of at least one of the cameras is designed to process tracking data of another camera.
- an object to be tracked can for example be transferred from one camera to the next.
- a central processing unit is provided in the network for evaluating the tracking data transmitted by the at least two cameras.
- the tracking data using evaluations can be made.
- typical motion sequences can be used for object recognition or to recognize emergency situations.
- the presentation of the Fig. 1 shows a camera according to the invention for object tracking 10, which has an image sensor unit 12 and a processing unit 14 in a common housing.
- the image sensor unit 12 is designed, for example, as a CMOS sensor and supplies image data to the processing unit 14.
- tracking data are generated which characterize an object to be tracked, at least in terms of position and speed and also, for example, in terms of shape, color and the like.
- the processing unit 14 has a so-called tracking unit in which the tracking data are generated.
- the processing unit 14 has a region of interest (ROI) selection unit, with which the image sensor unit 12 can be controlled in such a way that only the image areas that are of interest for the object tracking are transferred to the processing unit 14.
- ROI region of interest
- ROI selection unit also selects the image areas taking into account the tracking data. From the image sensor unit 12 to the processing unit 14 thus only those image areas are transmitted in which a high probability Lich is that they can provide information about the object to be tracked.
- the combination of an ROI selection method and the generation of the tracking data within the camera 10 itself allows the result output of the camera 10, symbolized by a double arrow 16, only a very small bandwidth required and that this result transmission can take place over a standard network.
- the generation of the tracking data within the camera 10 can be done so fast that real-time applications can be realized.
- the structure of the camera 10 will be explained in more detail below.
- Fig. 2 shows a multi-camera system with multiple cameras 10a, 10b, 10c according to the invention.
- Each of the cameras 10a, 10b and 10c is identical to the camera 10 of FIG Fig. 1 built up.
- the cameras 10a, 10b, 10c are connected to each other via a network 18.
- a data exchange with the network 18 can be bidirectional, so that tracking data of an object to be tracked can be passed from the camera 10a to the camera 10b, for example, when the object to be tracked leaves the detection area of the camera 10a.
- the tracking data can also be transferred from the camera 10a to the camera 10c, and depending on which detection area an object to be tracked changes, the camera recognizing the object to be tracked can then output further tracking results.
- FIG. 3 In the block diagram of Fig. 3 is the construction of the camera 10 of the Fig. 1 shown in more detail.
- the image sensor unit 12 generates image data and supplies it to the processing unit 14, wherein the processing unit 14 in FIG Fig. 3 indicated only by a dashed outline is.
- the image data from the image sensor unit 12 are first transferred to an ROI selection unit 20, but initially only looped through the image data or cached in a cache so that the double or multiple transmission of overlapping image areas is avoided.
- the task of the ROI selection unit 20 is to control the image sensor unit 12 so that only the image areas of interest for further processing are forwarded. How the ROI unit 20 determines these image areas of interest will be explained below. If the ROI unit 20 does not fulfill a buffering function, the image sensor unit 12 can also pass on the image data while bypassing the ROI unit 20.
- Reference numeral 22 thus provides image data of image areas in which there is a high probability that they contain information about the objects to be tracked.
- This image data is passed to a filter 24 which is optional and which then provides the filtered data at 26.
- the filter 24 can, for example, convert the image data from 22 into a color histogram in the HSV color space (Hue-Saturation Value).
- the filter 24 can also implement a color histogram in the RGB color space (red-green-blue).
- the implementation in color histograms has the advantage that the robustness of the subsequent evaluation is significantly increased, for example, against rotations and / or changes in shape of an object to be tracked.
- the filtered image data 26 are then fed to a comparison unit 28, in which a comparison measurement is performed and the image data 26 corresponding to the object to be tracked are compared with similarly prepared data of a comparison object.
- the resulting weights of all nodes must then be normalized.
- the comparison unit 28 then gives an approximate Probability density function 30, which simultaneously represents the central output of the camera 10.
- the probability density function 30, which is efficiently approximated by means of several nodes, represents the result of the tracking unit and only requires a small bandwidth for transmission over a network.
- the approximated probability density function 30 may then be output via a network I / O unit 32 and supplied to further units that perform further processing based on this result.
- a maximum likelihood state i. the state in which the probability density function is maximum is calculated. In the present approximation by support points, this means that the support point is used with the highest weight. Furthermore, an expected value can be calculated in the unit 34.
- the unit 34 may also output the result of its evaluation via the network I / O unit 32 to a network.
- a control unit 36 uses the probability density function 30 for control applications. For this purpose, the control unit 36 generates control signals for a so-called pan-tilt unit, on which the camera 10 is mounted. By means of this pan-tilt unit, the camera 10 can be tracked to an object to be tracked. Alternatively, the control signals of the control unit 36 may also be output to a robot controller or CNC machine controller.
- Further units 38 which use the probability density function 30 for further processing, for example, generate commands for the transfer of persons / objects into a multi-camera system when a person traverses the field of view from one camera to the next.
- the initialization of a target object basically by presenting in front of the camera and training is done.
- the units 34, 36 and 38 may output their respective results via the network I / O unit to a network or, if there is no network, to a signal line.
- the probability density function 30 is also supplied to a so-called update unit 40, in which a time index of the probability density function being calculated is reduced by one in order to classify the probability density function just calculated no longer as the current value but as the most recent old value.
- the update unit 40 is thus the first station of a feedback loop within the tracking unit 21.
- this feedback loop on the one hand, a prediction is made as to how the probability density function is likely to appear at the next time step, and based on this prediction, a comparison object is again generated which, as already described, is then compared in the comparison unit 28 with the currently detected object.
- a weighting of the individual nodes is made and based on this weighting, it is decided whether a redistribution of the support points for the next pass of the loop is required.
- This probability density function of FIG. 42 is linked for prediction to a motion model 44, which in the illustrated embodiment is also in the form of a probability density function.
- a motion model 44 which in the illustrated embodiment is also in the form of a probability density function.
- the linking of the motion model of FIG. 44 with the probability density function of FIG. 42 takes place in a prediction unit 46.
- a convolution of the motion model is performed with the probability density function, as set forth in the equation found below the unit 46.
- a new interpolation point distribution is generated on the basis of the weighting of the interpolation points, with interpolation points of high weight receiving a number of successors corresponding to the weighting in the last iteration, but all of them are initially arranged at the same position.
- the position of the new nodes is scattered after applying the motion model.
- the movement model is to be applied only once by means of a new support point, only then the position is scattered. Support points with low weighting receive no successor.
- a new probability density function is output at 48, which correspondingly represents a predicted position based on the knowledge previously available.
- the prediction of the probability density function from 48 in a rendering unit 50 is linked to a parametric model from 52.
- the rendering step in render unit 50 generates the image data of a comparison object. In the simplest case of an object moving linearly at a constant speed, the image data of the comparison object would thus correspond to the object displaced by a certain distance.
- the parametric model from 52 can be adapted depending on external circumstances. This is of importance, for example, when objects with complex geometry are to be traced, whose shape may even change, whose projection changes as a function of a rotational position or with changing illumination.
- an adaptation is only carried out if it is very likely that it is also the object to be tracked, which has now changed its appearance. For example, the environment of a support point of the probability density function with the relatively highest weighting may not be used for adaptation at each step. If, in fact, the object to be tracked is no longer located in the viewed image section, an adaptation then carried out would result in the parametric model being changed in such a way that recognition of the object to be tracked is not possible.
- Remedy can, however, be created, for example, that the environment of a support point with the relatively highest weight is additionally tested for absolute weighting and above a defined weighting, so if it can be assumed with great certainty that it is the object to be tracked , the environment of this support point is used for adaptation.
- the model can be an image region (ROI) of the target object.
- model 52 a so-called AAM implementation (Active Appearance Model) take place, wherein this non-rigid and optionally textured model, in particular in the case of changes in shape, is advantageous.
- AAM Active Appearance Model
- a three-dimensional AAM is possible.
- the filter 24 can be completely eliminated. It is also possible to use a contour-based method as a model, where the state determines the shape of the contour, for example with splines.
- image data of a comparison object is thus available at 54.
- These image data of the comparison object at 54 will now be compared with the currently recorded image data at 22.
- these image data from 54 are subjected to the same filtering as the image data from FIG. 22, so that a filter unit 56 identical to the filter unit 24 is provided correspondingly and then the filtered image data of FIG Comparative object present.
- a comparison of the image data of the object to be tracked currently recorded by the image sensor unit 12 and the image data of the comparison object is then compared with one another in comparison unit 28.
- the comparison measurement corresponds to a weighting of the new state X t according to the new measurement z t .
- the probability density function 30 results as a result of the comparison measurement in the comparison unit 28.
- the image data of the comparison object is also supplied to the ROI selection unit 20 at 54.
- the ROI unit 20 controls the image sensor unit 12 to request only those regions of interest corresponding to the image regions of the image data of the comparison object of FIG. 54.
- the ROI selector 20 implements a caching method to save overlap of ROIs of the same iteration so that even overlapping regions of different image areas of interest need only be transferred once.
- the image region (ROI) is determined, which in fact is only needed to determine this state, that is, this hypothesis which manifests itself in the comparison object. to rate. This is done technically for each sample or sample X t (i) .
- the camera according to the invention and the method implemented are highly suitable for parallel processing. So only have to determine the probability density function 30, or for determination the approximation of the probability density function by multiple nodes, all nodes are merged and normalized.
- the other explained calculation steps can be carried out separately for each support point and, for example, can also be implemented in parallel hardware.
- the camera according to the invention and the method according to the invention are therefore particularly suitable for real-time applications.
- the invention can also be applied to cameras with more than one sensor element.
- a stereo camera is possible or even the combination of a conventional image sensor and a thermal image sensor.
- Such a combination is of particular interest for surveillance applications.
- a fusion of the results from the two different sensors would then, for example, in Fig. 3 performed in the unit 38.
- the presentation of the Fig. 4 shows a multi-camera system according to the invention in a schematic representation in a possible application scenario.
- Today, lifeguard swimming areas are monitored by the sea or by a lake to save injured or exhausted people from drowning.
- a bathing section is monitored by a multi-camera system with cameras 60a, 60b, 60c, 60d and 60e.
- the cameras 60a, 60b, 60c, 60d and 60e are interconnected by means of a wireless network, not shown.
- the cameras are mounted on a pier 62 and on rescue towers 64, 66.
- a suitable monitoring algorithm for example realized in the unit 38 of FIG Fig. 3 , should be monitored whether there is a critical situation, for example, if a swimmer 68 is in trouble.
- Lifeguards and rescue vehicles should also be equipped with wireless, network-enabled devices, such as PDAs (personal digital assistant) or laptops with network connection. It is very essential for this application of the invention that the cameras according to the invention only output the result data and therefore only make small demands on the computing capacity on display devices which are likewise located in the network.
- PDAs personal digital assistant
- the multi-camera system it is possible with the multi-camera system according to the invention to display the results of all cameras 60a, 60b, 60c, 60d and 60e on an external device with low processing power, for example, a so-called PDA.
- a communication between the lifeguards can take place via the same network.
- a surfer 70 whose surfboard has a networkable display unit could be informed about the danger situation.
- the cameras 60a, 60b, 60c, 60d and 60e can also be realigned, programmed, configured and parameterized via the network.
- the cameras 60a, 60b, 60c, 60d, and 60e may also be connected to a non-local network, such as the Internet.
- the camera is part of a modern mobile phone.
- the mobile phone has other sensors, such as inertial, inertial, and position sensors.
- the mobile phone also has a computing unit in which a localization algorithm is implemented. For example, entering an airport, a three-dimensional map of the airport is transmitted to the mobile phone along with additional symbolic aspects, such as terminal names, restaurants, and the like.
- the state of the overall system X t designates the position within the building in this embodiment. When walking around with the appropriately equipped mobile phone image sequences are continuously recorded. The probabilistic tracking method then allows these measurements ultimately to crystallize a current position that can then be output, for example on the 3D map.
- a further embodiment of a camera 71 according to the invention is shown.
- the camera 71 is constructed in and of itself identical to the embodiments already described, but in the detection range of an image sensor unit 72, a panoramic mirror 74 is arranged.
- This panoramic mirror 74 is spaced from the image sensor unit 72 and allows an omnidirectional view for the tracking, that is, it can be tracked in all directions simultaneously.
- the captured image regions are to be warped accordingly using known calibration techniques.
- the camera according to the invention and the method according to the invention it is thus now possible to automatically track a person within a camera view by means of tracking methods and thus to output only the position of the person instead of the live video stream.
- the camera according to the invention only a very low bandwidth requirement is imposed on a data connection from the camera to the outside and it is thereby possible without any problems to perform monitoring tasks within a network of cameras.
- any decentralized architecture and a virtually unlimited expandability of the network with cameras is possible.
- the invention it is possible to integrate the information of several inventive so-called smart cameras and then to visualize them in a common model, in particular a three-dimensional world model.
- This makes it possible for the path to be visualized in a 3D model - decoupled from the respective cameras, ie across camera views.
- the angle of view on the person can be freely chosen, for example with the person "flying along". The viewing angle is therefore no longer tied to the viewing angles of the cameras.
- the use according to the invention of three-dimensional models for the visualization of monitoring results thereby makes it possible to produce less abstract representations compared to known visualizations and thereby facilitates the overview of the current events.
- the output can also take place in common, georeferenced coordinate systems and embedded in a three-dimensional world model.
- FIG. 6 Shown is the reference numeral 80, the floor plan of a building in which a total of six inventive smart cameras 82, 84, 86, 88, 90 and 92 are positioned. All the cameras 82 to 92 are connected to a visualization unit 94, which may be designed, for example, as a portable visualization client in the network. In the visualization unit 94, the monitoring results, for example the results of a person tracking, are embedded in a three-dimensional model.
- the connections of the cameras 82 to 92 with the visualization unit 94 are only indicated schematically, can be set up any type of network connection in any configuration and topology, for example, as a bus connection, alternatively as wireless network connections. Additionally are in Fig. 6 still representations of the viewing angle of the individual cameras 82 to 92 in the form of a respective snapshot recorded.
- the presentation of the Fig. 7 schematically illustrates the steps that are performed in the visualization according to the invention.
- the smart cameras 82 to 92 each output a probability density function approximated by interpolation points.
- This probability density function can be output in spatial coordinates.
- the probability density function is output via two-dimensional coordinates x, y.
- the output probability density function can then be represented, for example, three-dimensionally, with a ground plane representing the coordinate plane x, y and the value of the probability density function being plotted upward from this ground plane.
- This three-dimensional representation is in Fig. 7 designated by the reference numeral 96.
- the reference numeral 98 is in the illustration of Fig. 7 a plan view of the illustration of FIG. 96 is designated.
- the Values of the probability density function can then be represented, for example, in color-coded form.
- a three-dimensional model of the environment or of a building to be monitored is recorded or read in, for example in the form of a computer-aided engineering (CAD) file.
- CAD computer-aided engineering
- the smart cameras are or will be installed in a suitable location in the building and added to a network.
- the smart cameras must then be calibrated relative to the three-dimensional model.
- the three-dimensional model is geo-referenced and after calibration, the outputs of the smart cameras are georeferenced with it.
- a person runs into the field of view of a smart camera and is automatically detected by the smart camera and recorded as a new target object and tracked with the particulate filter method already described. This is possible for other people, so that a multi-person tracking can be realized.
- the visualization of the tracking then takes place in the three-dimensional model, wherein different display modes can be provided. For example, with a single person mitfented, from the perspective of individual cameras or by graphical visualization of the previous path of a person.
- the representation of a person or an object in the three-dimensional model takes place by means of a generic three-dimensional person model.
- the person's current appearance can be mapped as a texture to the three-dimensional person model or represented as a sprite, ie as a graphic object superimposed on the visualization model.
- a user with his network-capable visualization client for example a PDA / smartphone, himself moves in the field of vision of one or more smart cameras and thereby simultaneously also inputting the tracking, in other words by the smart cameras themselves is pursued.
- the user After visualizing the monitoring results on his PDA / Smartphone, the user can thus directly see his own position and thereby make a self-localization.
- a navigation system can be operated for such a user, which, in contrast to GPS (Global Positioning System), also operates with high precision within a building.
- GPS Global Positioning System
- services can be offered, such as route guidance to a specific office, even across floors, or in an airport terminal.
- Visualization on the mobile device also makes it easier for the user to find his way around.
- friends or buddies can be visualized in the three-dimensional model. If the user himself is in the field of view of the smart cameras, this is particularly interesting, because he then sees directly on his mobile device, who is in his vicinity, or where his friends are currently.
- This can be used, for example, in singles contact services, where, if the coincidence of common preferences or the like has been established, the position of the potential partner can be released from the network for the other party so that both can see each other on their mobile terminals, and optionally also be guided to each other by a routing function. This is possible, for example, in a nightclub or a hotel complex, but not limited in range. It is particularly significant that when georeferenced visualization models are used, two persons can also be in separate camera networks and still be able to receive information on one another when the camera networks are networked with one another.
- further requests can be implemented, for example "what happened?".
- An answer could be that a new person has joined a person entering a security-critical area at the airport.
- Another request may be "where?" ring.
- Such a request can be answered by specifying a three-dimensional position and systems based thereon can be used, for example, to answer the question of where an abandoned suitcase is located in an airport.
- the output of the respective tracking position is no longer in coordinates of the image plane of the respective camera, but using the calibration in a global coordinate system, for example in a georeferenced global world coordinate system (WCS).
- WCS global world coordinate system
- stereo cameras which spatially capture a certain angle of view and thereby can output the three-dimensional position of a person.
- an average person height can be assumed, and the height in camera pixels can be used to infer the true height of the person using the camera calibration. In this way, an approximate distance to the camera can be calculated. If several cameras overlap with respect to their field of view, it is possible to measure the distance to the camera or cameras even without assuming an average person height. In this way, the two-dimensional image plane of a smart camera can be extended to a world coordinate system.
- an Internet-based world-wide representation can be used, in which georeferenced contents can be embedded.
- An example of this is the Internet-accessible visualization "Google Earth”.
- three-dimensional models of buildings can be embedded and such a world-wide representation can also be used to visualize the tracking results of the decentralized smart camera network.
- the positions of persons in this representation are indicated by green dots, where the extent of the dots indicates a confidence of how certain a person actually is located at the position shown. But also textured models of the respective person can be used for visualization.
- simplification arises from the fact that, when the camera is permanently mounted, a background model is detected, in which the recorded scene is presented without moving objects, for example without persons.
- the smart camera builds a background model from this scene in which, for example, a running average is formed over several temporally successive images in order to eliminate the noise.
- the background model may be calculated using thresholds of temporal change.
- the smart camera has a background model available, so that segmentation can be realized in operation by difference formation methods and optionally additionally by known erosion and dilation methods. This segmentation includes just all moving objects and can be used for the tracking process as a region-of-interest (ROI). Only in this segmented areas can be a person to be tracked.
- ROI region-of-interest
- This segmented area which is potentially incoherent, is a superset of the actual tracking, as several people can be in the picture at the same time. In this way, the required in the smart camera computational reading can be reduced because only those areas are further processed by the segmentation, in which a person to be tracked can be at all.
- an automatic initialization to movement is also made possible. This can simplify the tracking of multiple objects or multiple people.
- the initialization responds to motion relative to the background model.
- To make new objects very fast To track additional support points can preferably be placed at positions in the image, where people can leave the field of vision or enter. Incidentally, this is not necessarily the edge of the picture. For example, if the camera is mounted on a corridor, the entrance area could also be in the center of the image.
- Such positions, at which additional support points are provided can be specified or also be set up adaptively, for example, by sufficiently long training to be learned.
- the visualization takes place in a three-dimensional and preferably georeferenced visualization model.
- the smart cameras continue to work in their respective image plane and a conversion into world coordinates is then carried out taking into account a camera calibration.
- several cameras can be used together to determine the position of a person or an object in the room by means of known stereo methods.
- a so-called decentralized tracking can be performed by running in each smart camera own particulate filter. If there is a moving object in the field of view of a smart camera, a particle filter runs for this object. If two moving objects move within the field of view of the smart camera, then two particle filters are set up accordingly.
- the integration of the results of the tracking into a uniform three-dimensional model then takes place only at the level of the tracking results.
- the tracking results of all cameras are drawn into the three-dimensional model.
- this is done by transmitting the tracking results in the network, in particular to the visualization unit 94 and the there then following visualization. In the simplest case, passing the tracking results between the smart cameras can be done so that if two cameras provide very similar coordinates in the three-dimensional model, then these two results will be unified into one moving object.
- a state X consists here of the position of the person or of the object directly in world coordinates, this state X is held by the visualization unit 94 and each support point above this state X can be understood as a position hypothesis in world coordinates.
- Each smart camera then receives these coordinates from the visualization unit 94 to perform its own measurement. The joint processing of position hypothesis and measurement result is thereby already carried out at the measurement level, correspondingly in the smart camera itself.
- the visualization unit 94 has tasks of a central processing unit.
- moving objects or persons located in the overlap area of the field of view of two cameras are passed from one camera to the next in that both cameras provide a similar position of that person or object in world coordinates. Obviously, the position of one and the same moving object would be exactly the same position with perfect calibration of the two cameras.
- the two tracking results of the two cameras can be linked to a person. Additional security can be achieved by comparing the particular appearance of the object or person with each other to ensure that the right person is assigned. A handover may also be for a moment be delayed, where not just another person or another moving object happens to be next to the person to be passed on.
- the tracking results are in any case decoupled from the respective smart cameras.
- a person thus simply leaves the image plane of a first camera and enters the image plane of a second camera, the handover is thus implicitly done, as is calculated directly in world coordinates.
- the calibration of the cameras in global, in particular georeferenced coordinates can be done with standard methods, but it can also be a so-called analysis-by-synthesis approach can be used.
- the three-dimensional visualization model is used as the calibration object and the camera parameters are iteratively changed until selected points of the image plane of the camera coincide with the corresponding points of the three-dimensional visualization model, ie until the real camera view coincides optimally with the view of the visualization model.
- a smart camera can also be provided with one or more angle sensors in order to obtain information about the respective viewing direction of the camera.
- the position of the camera can also be determined by known surveying techniques relative to the environment, since the environment exists as a 3D model, so that the position relative to this model is known.
- the tracking that is, the tracking of a moving object or a person
- the time scale ⁇ should indicate the duration until the next-time evaluation of a current sensor image, this being specified in units of frames of the sensor.
- a new sensor image basically has an effect on the weight of a support point relative to other support points and, if appropriate, on the adaptation, if adaptive methods are provided.
- each object to be tracked or each person to be tracked on different timescales, on different timescales at the same time.
- the object to be tracked can thus be viewed over the full probability density function over time.
- the time scale can also be covered by interpolation points.
- the basis for the application of different time scales is the assumption that an object to be tracked behaves in much the same way as the movement model and can change its appearance at different speeds or analogously behaves according to the appearance model and deviates from the movement model, but not both happens at the same time. Both alternative assumptions are monitored and tracked by the timescales, and then the right thing crystallizes out.
- the so-called Markov assumption states that the current state is defined only by the previous states.
- a time scale with ⁇ > 1 is realized in that in an iteration, in which no new sensor image is to be processed, the computing time-consuming measuring step is omitted. Instead, the object is predicted only according to the motion model and optionally the appearance model. Since it is already known at a certain time scale in advance when a measurement is to take place, the motion model and the optional Appearance model due to the deterministic nature of all iterations that contain no measurement, for efficiency reasons in one step at a time run. In the presentation of the Fig. 8 For example, all iterations that contain no measurement can be recognized by the fact that in the different time scales of the Fig. 8 no vertical bar is drawn on these iterations. The computational effort for the above-described extension of the time scales or the uses of multiple time scales is almost twice as high when using the scheme described above than without this extension.
- the use of multiple time scales can also be used as a control entity for occlusion of objects to be detected.
- the use of multiple timescales can also be used on moving cameras where segmentation is not directly applicable.
- the use of multiple time scales can also help with existing segmentation methods, since they only segment moving objects to the background, but not between moving objects or people.
- the already described particulate filter method does not need to be changed.
- each node X now clearly describes a contour, for example the control points of a spline.
- a spline is generated in image coordinates, which is superimposed over the sensor image.
- the difference of this contour estimate to the current sensor image is calculated. For example, see Fig. 9 , considered in particular regular intervals along the contour points at which perpendicular to the contour of the distance to the next edge in the sensor image is calculated.
- the region-of-interest can only consist of the superposition of these vertical lines and only this superposition of the vertical lines must be transmitted by the smart camera or the sensor. For all support points together, therefore, the overlay of all these vertical lines from the smart camera alone is to be requested.
- the presentation of the Fig. 9 shows in the upper left image the resulting from a support point X contour and spaced along this contour points. In Fig. 9 the right vertical lines are then drawn at all points. In Fig. 9 bottom left, the contour can be seen together with the vertical lines and in Fig. 9 bottom right only the vertical lines are shown, which are ultimately to be requested as ROI from the sensor.
- AAM Active Appearance Model
- contour-based methods can also be linked to the histogram-based.
- a support point X then consists of the concatenation of both state variables.
- the state X can also include its speed in terms of direction and magnitude, and possibly also the angular orientation of the object.
- the state then contains the coding of the contour, as described, for example, the control points of a spline.
- Fig. 10 exemplified is the visualization of the monitoring result by visualizing the probability density function of a person over time t.
- Such visualization is generated by volume rendering methods and traces the trajectory of a tracked person, with different gray or color codes representing the probabilities of residence along the path.
- An application of the invention can be made, for example, in the detection of abandoned suitcases, for example in railway stations or airports. These are fixed cameras and, like already described, uses multiple timescales. It should thereby be recognized objects that have been added on a time scale. Similar to a bandpass, this filters out objects that change too fast, such as people walking around or noise. Similarly, too low frequencies are filtered out, so the background or sufficiently slow changes in the background.
- the detection of stray suitcases in an airport can be combined in a particularly advantageous manner with the monitoring of persons, since it is of particular interest to track the person who has parked the suitcase, both before parking but also afterwards.
- the system can track all recognizable persons in the field of view of the cameras. It should be noted that these persons do not necessarily have to be displayed to the user. For example, if one of the persecuted persons turns off a suitcase, the system can promptly present it to the user by following the suitcase and the path of the associated person who has potentially parked that suitcase. Then both the path before parking as well as after parking is shown, since all lying in the field of view persons were followed as a precaution. The user can thereby be shown only the important information without flooding it with information of no interest to the application.
- the user can thus immediately clarify the "what?" Question, namely an abandoned suitcase, and clearly follow the "where?" Question in the three-dimensional visualization model.
- the security personnel at the airport can see this visualization embedded on a mobile visualization client in a three-dimensional model and - as they themselves are also tracked by the system and thus localized - route planning to the target person or suitcase is calculated. This route planning is continuously updated, since the movement of the tracked target person so flows in real time.
- Object tracking plays a central role in many applications, in particular within robotics (Robotic robots, RoboCup robot football), surveillance technology (person tracking) as well as in the man-machine interface, in the motion capture motion tracking, in the field of augmented reality and for 3D television.
- robotics Robot robots, RoboCup robot football
- surveillance technology person tracking
- Particle filters have become established as an important type of object tracking today [1, 2, 3].
- the visual modalities used include form [3], color [4, 5, 6, 7], or a combination of modalities [8, 9].
- the Particle Filtering procedure is described in Section 2.
- an approach based on color histograms is used, which has been specially adapted to the requirements for technical implementation embedded in the camera.
- the architecture of the smart camera is described in Section 3. Subsequently, various advantages of the proposed approach will be discussed. Experimental results of this approach are illustrated in Section 4, followed by a summary.
- Particle filters can handle multiple simultaneous hypotheses and nonlinear systems. Following the notation of Isard and Blake [3], Z t defines all measurements ⁇ z 1 , ..., z t ⁇ until the time t, X t describes the state vector at time t of the dirrion k (position, velocity, etc.). of the target object). Particle filters are based on Bayes' theorem to compute the a posterior probability density function (pdf) p ( X t
- Z t p z t
- Every support point s t i induces a region of interest (ROI) P t i around his local position in the picture space.
- the size of the image region ( H x , H y ) is user-defined.
- the ⁇ function ensures that each addend is assigned to the associated bin, which is defined by its image intensity I , where I is to be understood once in the HS space, once in the V space.
- I image intensity
- the representation of the target object is calculated completely analogously, so that now a comparison of this with the histogram of each support point in Histogrammraum can be made.
- the histogram of the target object is compared with the histogram of each well: for this purpose, the Bhattacharyya similarity measure [4] is used here, both in the HS and in the V histogram individually.
- p t i and q designate the histograms of the interpolation points or of the target object (in each case in the HS and V histogram spaces).
- the two similarity values ⁇ HS and ⁇ V are then weighted by means of alpha blending and thus combined into a similarity value.
- the number of bins is variable, as is the weighting factor of alpha blending.
- the camera includes a sensor, an FPGA, a processor and an Ethernet network interface. More specifically, it includes a progressive scan (CCD) CCD sensor with a Bayer color mosaic.
- a Xilinx Spartan II FPGA is used for low-level processing. It also includes a 200 MHz Motorola PowerPC processor with MMU and FPU units running embedded Linux. It is connected to 32 MB SDRAM and 36 MB FLASH memory.
- the camera includes a 100 Mbit / s Ethernet interface, on the one hand for updating in the field ("Field Upgradability"), on the other hand for transmitting the results of the object tracking to the outside.
- Field Upgradability For direct connection with industrial controls also several inputs / outputs are available. There is also an analog video output and two serial ports where the monitor and mouse can be connected for debugging and target object initialization purposes.
- the camera is not only intended as a prototype under laboratory conditions, it was also developed to cope with harsh industrial environments.
- Fig. 13 shows the architecture of the smart camera.
- the output of the smart camera is transmitted via Ethernet using sockets. On the PC side, this data can then be visualized in real time and stored on data carriers for later evaluation.
- the camera is initialized with a cube object. For this she is trained by presenting the object in front of the camera, she saves the associated color distribution as a reference of the target object.
- the tracking performance was very satisfactory: the camera can track the target object robustly over time at a frame rate of 15 fps and a sensor resolution of 640x480 pixels.
- the process works directly on the raw and thus still color-filtered pixels through the Bayer mosaic: Instead of first making an expensive Bayer mosaic color conversion and then ultimately only using the histogram over it, which is not local Contains information, each four-pixel Bayer neighborhood is interpreted as an RGB pixel.
- This article featured a smart camera for real-time object tracking.
- it provides robust tracking performance because it can handle multiple hypotheses simultaneously.
- its bandwidth requirement is very low since only the approximated probability density function (pdf) p ( X t
- the output of the camera can also be used directly, for example to connect it to the control of an industrial robot or, for example, for communication between several such cameras at a higher level of abstraction. Due to the low bandwidth requirements, there is a ubiquitous availability of such an entire camera network.
- the Smart Camera implementation is largely parameterizable to suit both the hardware resources and the characteristics of the scene.
- the scale should be included in the state X in order to track changes in size can.
- it is planned to automatically adapt and track the view ("Appearance") of the target object during runtime in order to further increase the robustness of object tracking in the event of lighting changes.
- It is also planned to build a multi-camera system to demonstrate the benefits of communicating between cameras at this higher level of abstraction (for example, as a basis for tracking people in a surveillance application).
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Closed-Circuit Television Systems (AREA)
- Studio Devices (AREA)
- Image Analysis (AREA)
- Automatic Focus Adjustment (AREA)
Description
- Die Erfindung betrifft eine Kamera zum Verfolgen von Objekten mit einer Bildsensoreinheit zum Erzeugen von Bilddaten und einer Verarbeitungseinheit zum Verarbeiten der von der Bildsensoreinheit an die Verarbeitungseinheit übergebenen Bilddaten. Die Erfindung betrifft auch ein Multikamerasystem mit wenigstens zwei Kameras sowie ein Verfahren zum Verarbeiten von Bilddaten in einer Kamera zum Verfolgen von Objekten.
- Trackinganwendungen, die auf einem Netz von verteilten Kameras aufbauen, werden in heutiger Zeit immer gefragter, sowohl im Bereich Sicherheitstechnik zur Überwachung von Flughäfen, Bahnhöfen, Museen oder öffentlichen Plätzen, wie auch im Bereich der industriellen Bildverarbeitung bei Fertigungsstraßen und sichtgeführten Robotern. Traditionelle zentralisierte Ansätze weisen hier zahlreiche Nachteile auf. So übertragen heutige Systeme typischerweise den kompletten rohen Bildstrom des Kamerasensors über teure und entfernungsbeschränkte Verbindungen zu einem zentralen Rechner und müssen dort dann alle verarbeitet werden. Die Kameras werden somit typischerweise nur als einfache Sensoren angesehen und die Verarbeitung erfolgt erst nach aufwendiger Übertragung des rohen Videostromes. Dieses Konzept stößt bei Multikamerasystemen und Kameras mit hohen Auflösungen und/oder Frameraten schnell an Grenzen.
- Aus der europäischen Offenlegungsschrift EP 1 916 639 A2 ist eine Kamera zum Überwachen von Objekten bekannt, wobei die Kamera selbst eine Verarbeitungseinheit innerhalb eines Kameragehäuses aufweist. Mit der Verarbeitungseinheit können eine oder mehrere Routinen abgearbeitet werden, um bestimmte Bewegungsmuster und/oder Objekte zu detektieren. Beispielsweise kann die Kamera dadurch so programmiert werden, dass sie die Bewegungen von kleinen Tieren oder unbelebten Objekten wie Lüftern, Vorhängen und dergleichen ignoriert, wohingegen immer noch Bewegungen anderer Objekte, wie das Öffnen von Türen, Fenstern und dergleichen, detektiert wird.
- Der Erfindung liegt somit das Problem zugrunde, eine Objektverfolgung durch Kameras bereitzustellen, die in der Lage ist, mit mehreren Kameras und bandbreitenbeschränkten Netzwerken zu arbeiten.
- Erfindungsgemäß ist hierzu eine Kamera zum Verfolgen von Objekten, mit einer Bildsensoreinheit zum Erzeugen von Bilddaten und einer Verarbeitungseinheit zum Verarbeiten der von der Bildsensoreinheit an die Verarbeitungseinheit übergebenen Bilddaten vorgesehen, bei der die Verarbeitungseinheit eine ROI-Auswahleinheit zum Auswählen von für die Objektverfolgung interessanten Bildbereichen und eine Tracking-Einheit aufweist, um Trackingdaten von zu verfolgenden Objekten anhand der Bilddaten zu ermitteln, wobei an einem Signalausgang der Kamera die Trackingdaten ausgebbar sind und wobei die Trackingdaten gegenüber der von der Bildsensoreinheit erzeugten Menge an Bilddaten eine wesentlich verringerte Datenmenge aufweisen, insbesondere etwa um den Faktor 1000 verringert.
- Erfindungsgemäß erfolgt die Verarbeitung der Bilddaten somit bereits in der Kamera, so dass nicht der komplette, rohe Videostrom in voller Auflösung zu einer externen Verarbeitungseinheit übertragen werden muss. Stattdessen werden lediglich die sich ergebenden Trackingdaten übertragen. Darüber hinaus werden durch die Verwendung der Region of Interest (ROI)-Auswahleinheit die zu verarbeitenden Bilddaten bereits in ihrer Menge stark begrenzt, so dass die Verarbeitung der Daten in Echtzeit erfolgen kann, was bei Trackinganwendungen von großer Bedeutung ist. Da somit nur die resultierenden Daten von der Kamera übertragen werden müssen, wird die Verwendung von Standardnetzwerkverbindungen überhaupt erst möglich. Zur Berechnung der Trackingdaten ist darüber hinaus kein externer Rechner erforderlich, da dies bereits innerhalb der Kamera erledigt wird. Ein gegebenenfalls dennoch vorhandener zentraler Rechner kann dann für übergeordnete Aufgaben verwendet werden.
- Zu der erfindungsgemäßen erheblichen Verringerung der zu übertragenden Datenmenge trägt zum einen das Auswählen von für die Objektverfolgung interessanten Bildbereichen und zum anderen die Berechnung der Trackingdaten innerhalb der Kamera bei. Ein Kamerabild in VGA-Auflösung benötigt etwa ein Drittel der 100 Mbit/s Standard-Ethernetbandbreite, wobei dies ohne Heranziehung des sogenannten Bayer-Mosaics erreicht wird, ansonsten wird die dreifache Bandbreite benötigt. Gemäß der Erfindung wird hingegen eine Reduktion auf wenige hundert Kilobit pro Sekunde ermöglicht, da lediglich die Ergebnisse übertragen werden. Da der rohe Videostrom gemäß der Erfindung nicht mehr durch die Bandbreite der Verbindung nach außen beschränkt ist, können bei der erfindungsgemäßen Kamera Sensoren mit sehr hoher örtlicher und seitlicher Auflösung verwendet werden. Zwei Gründe sind hierfür verantwortlich: Zum Einen ist aufgrund der Nähe der Verarbeitungseinheit direkt am Sensor eine höhere Übertragungsgeschwindigkeit technisch viel einfacher realisierbar als außerhalb der Kamera, zum Anderen wird, wie bereits erwähnt wurde, durch die ROI-Auswahleinheit das aktuelle Kamerabild nur an ausgewählten und sich beispielsweise dynamisch ändernden Regionen ausgewertet. Hierzu sind Region-of-Interest-(ROI)-fähige Kamerasensoren, wie etwa CMOS-Sensoren erforderlich.
- In Weiterbildung der Erfindung sind die Trackingdaten in Form einer insbesondere approximierten Wahrscheinlichkeitsdichtefunktion bereitgestellt. Vorteilhafterweise ist die Wahrscheinlichkeitsdichtefunktion durch mehrere Stützstellen approximiert.
- Mittels einer insbesondere approximierten Wahrscheinlichkeitsdichtefunktion werden die für eine Trackinganwendung ausschließlich interessierenden Zieldaten, wie beispielsweise Position und Geschwindigkeit eines zu verfolgenden Objektes, berechnet und dann von der Kamera ausgegeben. Die Approximation der Wahrscheinlichkeitsdichtefunktion durch mehrere Stützstellen, deren Position und Anzahl gegebenenfalls adaptiv veränderbar ist, wird eine deutliche Reduktion des durchzuführenden Rechenaufwands erreicht. Dennoch hat sich gezeigt, dass eine für Trackinganwendungen ausreichende Präzision erreicht werden kann.
- In Weiterbildung der Erfindung sind in der Verarbeitungseinheit Parallelverarbeitungsmittel zum parallelen Verarbeiten der Stützstellen der Wahrscheinlichkeitsdichtefunktion und hiervon abhängender Daten vorgesehen.
- Auf diese Weise kann eine sehr schnelle Verarbeitung auch zahlreicher Stützstellen erfolgen. Beispielsweise werden für hundert Stützstellen hundert identische Hardware-Schaltkreise vorgesehen. Dadurch macht es die Erfindung möglich, Tracking-Verfolgungen mit hoher Präzision in Echtzeit zu realisieren.
- In Weiterbildung der Erfindung implementiert die Tracking-Einheit einen sogenannten Particle-Filter, bei dem eine Wahrscheinlichkeitsdichtefunktion (p(Xt|Zt)) anhand eines Approximationsschrittes auf Basis von Stützstellen, eines Vorhersageschrittes und eines Messungsschrittes angenähert wird. Xt bezeichnet den Zustand zur Zeit t und Zt alle Messungen bis einschließlich zur Zeit t. Im Approximationsschritt wird die Wahrscheinlichkeitsdichtefunktion abgetastet und so neue Stützstellen zur Approximation des Zustandvektors Xt bestimmt. Im Vorhersageschritt wird pro Stützstelle der neue Zustandsvektor Xt eines zu verfolgenden Objekts anhand alter Messungen Zt-1 und eines alten Zustandsvektors Xt-1 sowie unter Berücksichtigung eines hinterlegten Bewegungsmodells ermittelt und im Messungsschritt wird der neue Zustandsvektor Xt unter Berücksichtigung einer neuen Messung gewichtet. Im Approximationsschritt wird die aus allen neuen Zustandsvektoren resultierende Approximation der Wahrscheinlichkeitsdichtefunktion p(Xt|Zt) durch Stützstellen neu approximiert.
- Die Verwendung eines sogenannten Particle-Filters in der Tracking-Einheit erlaubt eine schnelle Verarbeitung auch großer Bilddatenmengen und dennoch wird eine hohe Präzision der Objektverfolgung erreicht.
- In Weiterbildung der Erfindung übergibt die Tracking-Einheit Trackingdaten von zu verfolgenden Objekten, insbesondere ein Vorhersagevergleichsobjekt, an die ROI-Auswahleinheit, um in Abhängigkeit der Trackingdaten die für die Verarbeitung interessanten Bildbereiche auszuwählen.
- Indem die interessanten Bildbereiche anhand von Trackingdaten ausgewählt werden, kann mit hoher Wahrscheinlichkeit sichergestellt werden, dass nur relevante Bildbereiche ausgewertet werden. Beispielsweise kann anhand der Trackingdaten auf ein Vergleichsobjekt des zu verfolgenden Objektes zurückgerechnet werden und auf Basis dieses Vergleichsobjektes wird dann entschieden, welche Bildbereiche aus dem aktuellen Kamerabild ausgewählt werden sollen. Bei einem zu verfolgenden Objekt, das sich mit konstanter Geschwindigkeit bewegt, würde das Vergleichsobjekt somit der Abbildung in der letzten Kameraaufnahme entsprechen, lediglich seine Position wäre demgegenüber verschoben.
- In Weiterbildung der Erfindung wird das Vorhersagevergleichsobjekt mittels eines hinterlegten parametrischen Modells erzeugt, das adaptiv anpassbar ist.
- Bei komplizierteren zu verfolgenden Objekten können dadurch beispielsweise Veränderungen des Objekts berücksichtigt werden, die nicht im Bewegungsmodell enthalten sind, beispielsweise Drehungen eines menschlichen Kopfes, die aus ein und derselben Richtung zu völlig anderen Ansichten des Kopfes führen. Wesentlich ist dabei, dass die adaptive Anpassung nur dann vorgenommen wird, wenn man sicher ist, dass man auch das zu verfolgende Objekt vor sich hat. Beispielsweise darf eine Anpassung des hinterlegten parametrischen Modells dann nicht erfolgen, wenn über das gesamte Kamerabild lediglich geringe Wahrscheinlichkeitswerte ermittelt werden. Würde nämlich in diesem Fall der Ort mit der höchsten Wahrscheinlichkeit zur Aktualisierung des Bewegungsmodells verwendet werden, obwohl das zu verfolgende Objekt sich gar nicht mehr im Bildbereich befindet, würde das Bewegungsmodell so angepasst, dass ein nachfolgendes erneutes Auffinden des zu verfolgenden Objekts nicht mehr möglich wäre. Bei der adaptiven Anpassung des Bewegungsmodells muss somit darauf geachtet werden, dass Wahrscheinlichkeitswerte nicht nur relativ, sondern auch absolut bewertet werden, um letztlich zu erkennen, ob die Wahrscheinlichkeitsdichtefunktion p(Xt|Zt) unimodal ist.
- In Weiterbildung der Erfindung werden in der Verarbeitungseinheit die Bilddaten des von der ROI-Auswahleinheit ausgewählten Bildbereichs in ein Farbhistogramm umgesetzt und die Tracking-Einheit ermittelt die Trackingdaten auf Basis des Farbhistogramms.
- Die Verwendung eines Farbhistogramms hat Vorteile bezüglich der Robustheit der Verarbeitungsalgorithmen in Bezug auf Drehungen, teilweise Verdeckung und Verformung. Beispielsweise wird der HSV-Farbraum (Hue-Saturation-Value) verwendet, der Vorteile gegenüber rot, grün, blau bietet. Alternativ kann auch der RGB-Farbraum (Rot-Grün-Blau) oder der CMY-Farbraum (Cyan-Magenta-Yellow) eingesetzt werden.
- In Weiterbildung der Erfindung steuert die ROI-Auswahleinheit die Bildsensoreinheit in Abhängigkeit der Trackingdaten so an, dass von der Bildsensoreinheit nur noch diejenigen Bilddaten zur Verarbeitungseinheit übertragen werden, die den von der ROI-Auswahleinheit ausgewählten interessanten Bildbereichen entsprechen.
- Erfindungsgemäß kann somit die Bandbreite vom Sensor zur Verarbeitungshardware deutlich reduziert werden, indem nur die Kombination von Bildbereichen überhaupt zur Verarbeitung übertragen wird, die für den Trackingalgorithmus notwendig ist. Dies geschieht unabhängig von der physikalischen Auflösung des Sensors. Diese interessierenden Regionen werden dabei von Frame zu Frame dynamisch generiert und zum Sensor übertragen. Der Sensor muss natürlich einen solchen direkten Zugriff auf Bildbereiche ermöglichen, dies ist aber bei heutigen CMOS-Sensoren der Fall.
- In Weiterbildung der Erfindung sind die Bildsensoreinheit und die Verarbeitungseinheit in einem gemeinsamen Gehäuse integriert.
- Dadurch wird es möglich, die Bildsensoreinheit und die Verarbeitungseinheit räumlich nahe zueinander unterzubringen und darüber hinaus auch gegen Umwelteinflüsse zu schützen. Da die Anforderungen an eine externe Verbindung der Kameras in Bezug auf die Bandbreite sehr gering sind, bestehen dadurch nur wenig Einschränkungen bei der Positionierung der Kameras. Dies gilt insbesondere dann, wenn mehrere Kameras mittels eines drahtlosen Netzwerks miteinander in Kommunikation stehen.
- In Weiterbildung der Erfindung weist die Verarbeitungseinheit eine Netzwerkeinheit auf.
- Die erfindungsgemäße Kamera kann dadurch problemlos in ein Netzwerk, beispielsweise auch ein kabelloses Netzwerk, eingebunden werden. Dass dies überhaupt möglich ist, liegt an der bei der Erfindung sehr geringen Bandbreite, die für eine Übertragung der in der Kamera berechneten Ergebnisse nach außen erforderlich ist.
- In Weiterbildung der Erfindung sind eine Steuereinheit und Einstellmittel vorgesehen, um in Abhängigkeit der Trackingdaten Einstellparameter der Kamera, insbesondere Ausrichtung, Bildausschnitt und Vergrößerung, zu verändern.
- Da die Kamera die Trackingdaten selbst berechnet, kann eine Steuereinheit in der Kamera dann auch das Nachführen der Kamera vornehmen. Ganz wesentlich ist, dass hierzu keine Signalübertragung nach außen erforderlich ist. Der Ausfall eines Netzwerks, an das die Kamera angeschlossen ist, ist von außen somit nicht feststellbar. Selbst wenn also überhaupt keine Verbindung mehr von der Kamera zu einer zentralen Auswertestation besteht, wird durch das noch erfolgende Nachführen der Kamera der Eindruck einer fortlaufenden Überwachung aufrechterhalten, die, sobald die Verbindung wieder besteht, nahtlos fortgeführt werden kann.
- Das der Erfindung zugrundeliegende Problem wird auch durch ein Verfahren zum Verarbeiten von Bilddaten in einer Kamera zum Verfolgen von Objekten gelöst, bei dem folgende Schritte vorgesehen sind:
- Übertragen von Bilddaten von einer Bildsensoreinheit zu einer Verarbeitungseinheit der Kamera,
- Erzeugen von Trackingdaten zu verfolgender Objekte in der Verarbeitungseinheit unter Verwendung probabilistischer Verfahren,
- Auswählen von Bereichen der Bilddaten in Abhängigkeit der Trackingdaten, so dass nur Bilddaten ausgewählt werden, bei denen eine erhöhte Wahrscheinlichkeit dafür besteht, dass sie Informationen über zu verfolgende Objekte enthalten und
- Ausgeben der Trackingdaten an einem Signalausgang der Kamera, wobei die Trackingdaten gegenüber der von der Bildsensoreinheit erzeugten Menge an Bilddaten eine wesentlich verringerte Datenmenge aufweisen.
- Mit dem erfindungsgemäßen Verfahren wird es möglich, lediglich noch die Ergebnisdaten einer Objektverfolgung von der Kamera aus nach auβen zu übertragen, so dass bereits dadurch die nach außen erforderliche Übertragungsbandbreite wesentlich verringert ist. Darüber hinaus werden auch nur diejenigen Bilddaten für die Verarbeitung ausgewählt, die mit erhöhter Wahrscheinlichkeit Informationen über zu verfolgende Objekte enthalten, beispielsweise mittels einer Rückkopplung der Trackingdaten auf eine Auswahleinheit. Dadurch wird die Möglichkeit geschaffen, eine Objektverfolgung mittels Kameras auch bei hoher örtlicher und zeitlicher Auflösung in Echtzeit zu realisieren.
- In Weiterbildung der Erfindung enthält der Schritt des Auswählens von Bereichen der Bilddaten das Ansteuern der Bildsensoreinheit in einer Weise, dass nur noch Bilddaten von der Bildsensoreinheit zur Verarbeitungseinheit übertragen werden, bei denen eine erhöhte Wahrscheinlichkeit dafür besteht, dass sie Informationen über zu verfolgende Objekte enthalten.
- Dadurch kann die Menge der von der Bildsensoreinheit zu übertragenden Bilddaten deutlich verringert werden.
- In Weiterbildung der Erfindung enthält der Schritt des Erzeugens von Trackingdaten das Approximieren einer Wahrscheinlichkeitsdichtefunktion mittels mehrerer Stützstellen.
- Auf diese Weise kann der Rechenaufwand zur Erzeugung der Trackingdaten wesentlich verringert werden. Darüber hinaus können Schaltkreise zur Verarbeitung der einzelnen Stützstellen in Hardware oder Software parallel ausgeführt werden, so dass auch eine sehr schnelle Erzeugung der Trackingdaten möglich ist.
- In Weiterbildung der Erfindung enthält der Schritt des Erzeugens von Trackingdaten das Erzeugen von Bilddaten eines Vergleichsobjekts anhand einer Wahrscheinlichkeitsdichtefunktion der zu verfolgenden Objekte und wenigstens einen hinterlegten parametrischen Modells der zu verfolgenden Objekte.
- Auf diese Weise können die errechneten Trackingergebnisse wieder in Bilddaten umgesetzt werden und diese Bilddaten eines Vergleichsobjekts können dann mit dem aktuellen Kamerabild verglichen werden, um die Qualität der Trackingergebnisse zu bewerten und die gegebenenfalls anzupassen. Darüber hinaus können die Bilddaten des Vergleichsobjekts dazu verwendet werden, lediglich diejenigen Bilddaten mittels der Auswahleinheit auszuwählen, die im Wesentlichen dem Bildausschnitt des Vergleichsobjektes entsprechen.
- Das der Erfindung zugrundeliegende Problem wird auch durch ein Multikamerasystem mit wenigstens zwei erfindungsgemäßen Kameras gelöst, bei dem jede Kamera eine Netzwerkeinheit aufweist und die wenigstens zwei Kameras über ein Netzwerk, insbesondere Ethernet oder WLAN, miteinander in Verbindung stehen.
- Da die erfindungsgemäßen Kameras lediglich eine geringe Bandbreite zur Übertragung der Trackingergebnisse nach außen benötigen, können Multikamerasysteme mit den erfindungsgemäßen Kameras auf Basis von Standardnetzwerkanwendungen realisiert werden. Dies ist beispielsweise auch mit drahtlosen Netzwerkverbindungen möglich. Die Kommunikation über das Netzwerk kann dabei selbstverständlich bidirektional erfolgen. Die Kameras können nicht nur die Ergebnisdaten ausgeben, sondern über das Netzwerk beispielsweise auch Informationen über zu verfolgende Objekte oder Ansteuersignale zur Einstellung und Ausrichtung der Kameraoptik erhalten.
- In Weiterbildung der Erfindung ist die Verarbeitungseinheit wenigstens einer der Kameras zum Verarbeiten von Trackingdaten einer anderen Kamera ausgelegt.
- Auf diese Weise kann ein zu verfolgendes Objekt beispielsweise von einer Kamera zur nächsten übergeben werden.
- In Weiterbildung der Erfindung ist im Netzwerk eine zentrale Verarbeitungseinheit zum Auswerten der von den wenigstens zwei Kameras übertragenen Trackingdaten vorgesehen.
- Mit einer zentralen Verarbeitungseinheit können dann weitere, die Trackingdaten nutzende Auswertungen vorgenommen werden. Beispielsweise können typische Bewegungsabläufe zur Objekterkennung oder zum Erkennen von Notfallsituationen genutzt werden.
- Weitere Merkmale und Vorteile der Erfindung ergeben sich aus den Ansprüchen im Zusammenhang mit der nachfolgenden Beschreibung bevorzugter Ausführungsformen der Erfindung im Zusammenhang mit den Zeichnungen. In den Zeichnungen zeigen:
- Fig. 1
- eine schematische Darstellung einer erfindungsgemäßen Ka- mera zur Objektverfolgung,
- Fig. 2
- eine schematische Darstellung eines erfindungsgemäßen Mul- tikamerasystems,
- Fig. 3
- ein Blockschaltbild einer bevorzugten Ausführungsform der er- findungsgemäßen Kamera,
- Fig. 4
- eine schematische Darstellung eines erfindungsgemäßen Mul- tikamerasystems in einer Anwendung bei der Strandüberwa- chung,
- Fig. 5
- eine schematische Darstellung einer weiteren Ausführungsform einer erfindungsgemäßen Kamera,
- Fig. 6
- eine schematische Darstellung eines erfindungsgemäßen Mul- ti-Kamera-Systems,
- Fig.7
- eine schematische Darstellung zur Verdeutlichung des erfin- dungsgemäßen Verfahrens,
- Fig. 8
- eine Darstellung unterschiedlicher Zeitskalen zur Verwendung bei dem erfindungsgemäßen Verfahren,
- Fig.9
- mehrere Darstellungen zum konturbasierten Ermitteln einer Region-of-Interest bei dem erfindungsgemäßen Verfahren und
- Fig. 10
- Darstellungen einer Wahrscheinlichkeitsdichtefunktion eines verfolgten Objekts gemäß dem erfindungsgemäßen Verfahren.
- Fig. 11
- Partikel-Filter Schleife
- Fig. 12
- Das Smart Camera System
- Fig. 13
- Smart Camera Architektur
- Fig. 14
- Wahrscheinlichkeitsdichtefunktion pdf p(Xt|Zt) zur Iterationszeit t. Links x-komponente, Rechts y-Komponente
- Fig. 15
- Kreisbewegungssequenz von Experiment #1. Bild (Obere Zeile) und approximierte Wahrscheinlichkeitsfunktion (pdf) (Untere Zeile) bei Iteration # 100, 109, 113, 125, 129, 136, 141. Stützstellen sind in grün gezeigt, der Erwartungswert ist als gelber Stern markiert.
- Fig. 16
- Experiment #2: Gesichtsverfolgungs-Sequenz. Bild (Obere Zeile) und approximierte Wahrscheinlichkeitsfunktion (pdf) (Untere Zeile) bei Iteration #18, 35, 49, 58, 79.
- Die Darstellung der
Fig. 1 zeigt eine erfindungsgemäße Kamera zur Objektverfolgung 10, die in einem gemeinsamen Gehäuse eine Bildsensoreinheit 12 und eine Verarbeitungseinheit 14 aufweist. Die Bildsensoreinheit 12 ist beispielsweise als CMOS-Sensor ausgebildet und liefert Bilddaten an die Verarbeitungseinheit 14. In der Verarbeitungseinheit 14 werden Trackingdaten erzeugt, die ein zu verfolgendes Objekt wenigstens in Bezug auf Position und Geschwindigkeit und beispielsweise auch bezüglich Form, Farbe und dergleichen charakterisieren. Die Verarbeitungseinheit 14 weist hierzu eine sogenannte Tracking-Einheit auf, in der die Trackingdaten erzeugt werden. Weiterhin weist die Verarbeitungseinheit 14 eine Region of Interest (ROI)-Auswahleinheit auf, mit der die Bildsensoreinheit 12 so angesteuert werden kann, dass lediglich die Bildbereiche zur Verarbeitungseinheit 14 übertragen werden, die für die Objektverfolgung von Interesse sind. Dies sind beispielsweise sich dynamisch ändernde Bildbereiche, wobei die ROI-Auswahleinheit die Bildbereiche auch unter Berücksichtigung der Trackingdaten auswählt. Von der Bildsensoreinheit 12 zur Verarbeitungseinheit 14 werden somit nur diejenigen Bildbereiche übertragen, bei denen eine große Wahrschein-lichkeit dafür besteht, dass sie Informationen über das zu verfolgende Objekt liefern können. - Die Kombination eines ROI-Auswahlverfahrens und der Erzeugung der Trackingdaten innerhalb der Kamera 10 selbst ermöglicht es, dass die Ergebnisausgabe der Kamera 10, symbolisiert durch einen Doppelpfeil 16, lediglich eine sehr geringe Bandbreite benötigt und dass diese Ergebnisübertragung über ein Standardnetzwerk erfolgen kann. Darüber hinaus kann die Erzeugung der Trackingdaten innerhalb der Kamera 10 so schnell erfolgen, dass Echtzeitanwendungen realisierbar sind. Der Aufbau der Kamera 10 wird nachstehend noch detaillierter erläutert.
-
Fig. 2 zeigt ein Multikamerasystem mit mehreren erfindungsgemäßen Kameras 10a, 10b, 10c. Jeder der Kameras 10a, 10b und 10c ist identisch zur Kamera 10 derFig. 1 aufgebaut. Die Kameras 10a, 10b, 10c stehen über ein Netzwerk 18 miteinander in Verbindung. Durch externes Triggern oder Synchronisieren über die Verbindung der Kameras kann sichergestellt werden, dass sie synchron arbeiten. Ein Datenaustausch mit dem Netzwerk 18 kann dabei bidirektional erfolgen, so dass Trackingdaten eines zu verfolgenden Objekts beispielsweise von der Kamera 10a an die Kamera 10b übergeben werden können, wenn das zu verfolgende Objekt den Erfassungsbereich der Kamera 10a verlässt. In gleicher Weise können die Trackingdaten von der Kamera 10a auch an die Kamera 10c übergeben werden und abhängig davon, in welchen Erfassungsbereich ein zu verfolgendes Objekt wechselt, kann dann die jeweils das zu verfolgende Objekt erkennende Kamera weiter Trackingergebnisse ausgeben. - In dem Blockschaltbild der
Fig. 3 ist der Aufbau der Kamera 10 derFig. 1 detaillierter dargestellt. Die Bildsensoreinheit 12 erzeugt Bilddaten und liefert diese an die Verarbeitungseinheit 14, wobei die Verarbeitungseinheit 14 inFig. 3 lediglich mittels eines gestrichelten Umrisses angedeutet ist. Die Bilddaten von der Bildsensoreinheit 12 werden zunächst an eine ROI-Auswahleinheit 20 übergeben, die die Bilddaten aber zunächst lediglich durchschleift oder in einem Cache so zwischenspeichert, dass die doppelte oder mehrfache Übertragung von einander überlappenden Bildbereichen vermieden wird. Die Aufgabe der ROI-Auswahleinheit 20 liegt darin, die Bildsensoreinheit 12 so anzusteuern, dass lediglich die für die weitere Verarbeitung interessanten Bildbereiche weitergeleitet werden. Wie die ROI-Einheit 20 diese interessierenden Bildbereiche ermittelt, wird nachfolgend noch erläutert. Wenn die ROI-Einheit 20 keine Zwischenspeicherfunktion erfüllt, kann die Bildsensoreinheit 12 die Bilddaten auch unter Umgehung der ROI-Einheit 20 weitergeben. - Bei der Bezugsziffer 22 stehen somit Bilddaten von Bildbereichen zur Verfügung, bei denen eine große Wahrscheinlichkeit dafür besteht, dass sie Informationen über die zu verfolgenden Objekte enthalten.
- Diese Bilddaten werden an einen Filter 24 übergeben, der optional vorhanden ist und der dann bei 26 die gefilterten Daten bereitstellt. Der Filter 24 kann beispielsweise die Bilddaten aus 22 in ein Farbhistogramm im HSV-Farbraum (Hue-Saturation Value) umsetzen. Alternativ kann der Filter 24 auch ein Farbhistogramm im RGB-Farbraum (Rot-Gün-Blau) umsetzen. Die Umsetzung in Farbhistogramme hat den Vorteil, dass die Robustheit der nachfolgenden Auswerteverfahren deutlich erhöht wird, beispielsweise gegenüber Drehungen und/oder Formänderungen eines zu verfolgenden Objektes.
- Die gefilterten Bilddaten 26 werden dann einer Vergleichseinheit 28 zugeführt, in der eine Vergleichsmessung durchgeführt wird und die dem zu verfolgenden Objekt entsprechenden Bilddaten 26 mit in gleicher Weise aufbereiteten Daten eines Vergleichsobjekts verglichen werden. Die dadurch erhaltenen Gewichte aller Stützstellen müssen dann noch normiert werden. Die Vergleichseinheit 28 gibt dann eine approximierte Wahrscheinlichkeitsdichtefunktion 30 aus, die gleichzeitig die zentrale Ausgabe der Kamera 10 darstellt. Die mittels mehrerer Stützstellen effizient approximierte Wahrscheinlichkeitsdichtefunktion 30 stellt das Ergebnis der Tracking-Einheit dar und erfordert lediglich eine geringe Bandbreite zur Übertragung über ein Netzwerk. Die approximierte Wahrscheinlichkeitsdichtefunktion 30 kann dann über eine Netzwerk-E/A-Einheit 32 ausgegeben werden und weiteren Einheiten zugeführt werden, die auf Basis dieses Ergebnisses weitere Verarbeitungsschritte vornehmen.
- Beispielsweise wird in einer Einheit 34 ein Maximum-Likelihood-Zustand, d.h. der Zustand, indem die Wahrscheinlichkeitsdichtefunktion maximal ist, berechnet. Bei der vorliegenden Approximation durch Stützstellen bedeutet dies, dass die Stützstelle mit dem höchsten Gewicht herangezogen wird. Weiterhin kann in der Einheit 34 ein Erwartungswert berechnet werden. Die Einheit 34 kann das Ergebnis ihrer Auswertung ebenfalls über die Netzwerk-E/A-Einheit 32 auf ein Netzwerk ausgeben. Eine Steuerungseinheit 36 verwendet die Wahrscheinlichkeitsdichtefunktion 30 für Steuerungsanwendungen. Hierzu erzeugt die Steuerungseinheit 36 Steuersignale für eine sogenannte Pan-Tilt-Einheit, auf der die Kamera 10 montiert ist. Mittels dieser Pan-Tilt-Einheit kann die Kamera 10 einem zu verfolgenden Objekt nachgeführt werden. Alternativ können die Steuersignale der Steuereinheit 36 auch an eine Robotersteuerung oder CNC-Maschinensteuerung ausgegeben werden.
- Weitere Einheiten 38, die die Wahrscheinlichkeitsdichtefunktion 30 für weiterführende Verarbeitungen verwenden, erzeugen beispielsweise Kommandos zur Weiterreichung von Personen/Objekten in einen Multikamerasystem, wenn eine Person das Sichtfeld von einer Kamera zur nächsten durchläuft. Diesbezüglich ist zu bemerken, dass die Initialisierung eines Zielobjekts grundsätzlich durch Präsentieren vor der Kamera und Eintrainieren geschieht. Es ist aber auch möglich, und für Überwachungsanwendungen sinnvoll, die Initialisierung des Zielobjekts durch Triggern auf das erste Objekt zu bewirken, das sich bewegt. Als Bewegung wird dabei interpretiert, wenn eine Differenz zum vorherigen Kamerabild oder zu mehreren vorhergehenden Kamerabildern größer als ein vordefinierter Schwellwert ist. Die Einheiten 34, 36 und 38 können ihre jeweiligen Ergebnisse über die Netzwerk-E/A-Einheit auf ein Netzwerk oder, falls kein Netzwerk vorhanden ist, auf eine Signalleitung ausgeben.
- Die Wahrscheinlichkeitsdichtefunktion 30 wird auch einer sogenannten Update-Einheit 40 zugeführt, in der ein Zeitindex der gerade berechneten Wahrscheinlichkeitsdichtefunktion um eins verringert wird, um die gerade berechnete Wahrscheinlichkeitsdichtefunktion nicht mehr als aktuellen Wert, sondern als jüngsten alten Wert einzustufen. Die Update-Einheit 40 ist damit die erste Station einer Rückkopplungsschleife innerhalb der Tracking-Einheit 21.
- In dieser Rückkopplungsschleife wird zum einen eine Vorhersage getroffen, wie die Wahrscheinlichkeitsdichtefunktion voraussichtlich beim nächsten Zeitschritt aussieht und basierend auf dieser Vorhersage wird noch ein Vergleichsobjekt erzeugt, das dann, wie bereits beschrieben, in der Vergleichseinheit 28 mit dem aktuell erfassten Objekt verglichen wird. Darüber hinaus wird in dieser Rückkopplungsschleife auch eine Gewichtung der einzelnen Stützstellen vorgenommen und basierend auf dieser Gewichtung wird entschieden, ob eine Neuverteilung der Stützstellen für den nächsten Durchlauf der Schleife erforderlich ist.
- Bei 42 liegt somit eine Wahrscheinlichkeitsdichtefunktion vor, die sich zunächst von der Wahrscheinlichkeitsdichtefunktion 30 nur durch ihren um eins verringerten Zeitindex unterscheidet. Bei 42 kann aber auch die bereits beschriebene Abtastung der approximierten Wahrscheinlichkeitsdichtefunktion anhand der Gewichtung der einzelnen Stützstellen vorgenommen werden.
- Diese Wahrscheinlichkeitsdichtefunktion aus 42 wird zur Vorhersage mit einem Bewegungsmodell 44 verknüpft, das bei der dargestellten Ausführungsform ebenfalls in Form einer Wahrscheinlichkeitsdichtefunktion vorliegt. Im einfachsten Fall, d.h. bei Bewegung mit konstanter Geschwindigkeit in eine Richtung würde die Verknüpfung der Wahrscheinlichkeitsdichtefunktion aus 42 mit dem Bewegungsmodell aus 44 lediglich eine Koordinatenverschiebung verursachen. Die Verknüpfung des Bewegungsmodells aus 44 mit der Wahrscheinlichkeitsdichtefunktion aus 42 findet in einer Vorhersageeinheit 46 statt. Innerhalb der Vorhersageeinheit 46 wird eine Faltung des Bewegungsmodells mit der Wahrscheinlichkeitsdichtefunktion vorgenommen, wie in der unterhalb der Einheit 46 zu findenden Gleichung ausgeführt ist.
- Im Approximationsschritt zwischen 42 und 46 wird anhand der Gewichtung der Stützstellen eine neue Stützstellenverteilung erzeugt, wobei Stützstellen mit hohem Gewicht bei der letzten Iteration eine der Gewichtung entsprechende Anzahl Nachfolger bekommen, die aber zunächst alle noch an derselben Position angeordnet sind. In der Vorhersage bei 46 wird die Position der neuen Stützstellen gestreut, nach Anwenden des Bewegungsmodells. Per neuer Stützstelle ist das Bewegungsmodel nur einmal anzuwenden, erst dann wird die Position gestreut. Stützstellen mit niedriger Gewichtung erhalten keinen Nachfolger.
- Als Ergebnis der Vorhersage in der Einheit 46 wird bei 48 eine neue Wahrscheinlichkeitsdichtefunktion ausgegeben, die entsprechend eine vorhergesagte Position basierend auf dem bisher vorhandenen Wissen repräsentiert.
- Um nun einen Vergleich dieser Vorhersage bei 48 mit den von der Bildsensoreinheit 12 erfassten Bilddaten durchführen zu können, wird die Vorhersage der Wahrscheinlichkeitsdichtefunktion aus 48 in einer Rendereinheit 50 mit einem parametrischen Modell aus 52 verknüpft. Der Renderschritt in der Rendereinheit 50 erzeugt die Bilddaten eines Vergleichsobjekts. Im einfachsten Fall eines sich linear mit konstanter Geschwindigkeit bewegten Objektes würden die Bilddaten des Vergleichsobjekts somit der um eine gewisse Strecke verschobenen Objekt entsprechen.
- Das parametrische Modell aus 52 kann dabei abhängig von äußeren Umständen adaptiert werden. Dies ist beispielsweise dann von Bedeutung, wenn Objekte mit komplizierter Geometrie verfolgt werden sollen, deren Form sich eventuell sogar ändert, deren Projektion in Abhängigkeit einer Drehstellung sich verändert oder bei sich ändernder Beleuchtung. Bei der Adaption des parametrischen Modells in 52 ist aber darauf zu achten, dass eine Adaption lediglich dann vorgenommen wird, wenn mit großer Wahrscheinlichkeit feststeht, dass es auch das zu verfolgende Objekt ist, welches nun sein Aussehen geändert hat. Beispielsweise darf nicht bei jedem Schritt die Umgebung einer Stützstelle der Wahrscheinlichkeitsdichtefunktion mit der relativ gesehen höchsten Gewichtung zur Adaption herangezogen werden. Wenn sich nämlich das zu verfolgende Objekt gar nicht mehr im betrachteten Bildausschnitt befindet, würde eine dann durchgeführte Adaption dazu führen, dass das parametrische Modell in einer Weise geändert wird, dass ein Wiedererkennen des zu verfolgenden Objekts nicht möglich ist. Abhilfe kann aber beispielsweise dadurch geschaffen werden, dass die Umgebung einer Stützstelle mit der relativ höchsten Gewichtung zusätzlich auf ihre absolute Gewichtung geprüft wird und oberhalb einer definierten Gewichtung, wenn also mit großer Sicherheit davon ausgegangen werden kann, dass es sich um das zu verfolgende Objekt handelt, wird die Umgebung dieser Stützstelle zur Adaption herangezogen.
- Als Modell kann eine Bildregion (ROI) des Zielobjektes dienen. Alternativ kann als Modell 52 auch eine sogenannte AAM-Umsetzung (Active Appearance Model) erfolgen, wobei dieses nicht starre und optional texturierte Modell, insbesondere bei Formänderungen, von Vorteil ist. Auch ein dreidimensionales AAM ist möglich. Wie bereits ausgeführt wurde, kann der Filter 24 auch vollständig entfallen. Ebenso ist möglich, als Modell ein Konturbasiertes Verfahren zu verwenden, wo durch den Zustand die Form der Kontur festgelegt wird, etwa mit Splines.
- Als Ergebnis des Renderschritts in 50 stehen bei 54 somit Bilddaten eines Vergleichsobjekts zur Verfügung. Diese Bilddaten des Vergleichsobjekts bei 54 sollen nun mit den bei 22 vorliegenden, aktuell aufgenommenen Bilddaten verglichen werden. Um eine Vergleichbarkeit der Bilddaten des Vergleichsobjekts mit den aktuell aufgenommenen Bilddaten zu gewährleisten, werden diese Bilddaten aus 54 der gleichen Filterung unterzogen wie die Bilddaten aus 22, so dass entsprechend eine zur Filtereinheit 24 identische Filtereinheit 56 vorgesehen ist und bei 58 dann die gefilterten Bilddaten des Vergleichsobjekts vorliegen. Wie bereits beschrieben wurde, wird dann in der Vergleichseinheit 28 ein Vergleich der Bilddaten des von der Bildsensoreinheit 12 aktuell aufgenommenen zu verfolgenden Objekts und die Bilddaten des Vergleichsobjekts auch aus 58 miteinander verglichen. Entsprechend der unterhalb der Vergleichseinheit 28 dargestellten Gleichung entspricht die Vergleichsmessung einer Gewichtung des neuen Zustandes Xt gemäß der neuen Messung zt. Wie bereits ausgeführt wurde, ergibt sich als Ergebnis der Vergleichsmessung in der Vergleichseinheit 28 die Wahrscheinlichkeitsdichtefunktion 30.
- Im speziellen Fall, wenn mit Farbhistogrammen gearbeitet wird, reicht es aus, die bereits gefilterte Repräsentation als Modell zu speichern, da hier das Ergebnis der Filterung immer gleich und nicht vom Zustand Xt abhängig ist. So kann direkt an 58 das Modell eingesetzt werden. Somit braucht es nicht für jede Stützstelle in jeder Iteration über die Schritte 52-50-54-56-58 berechnet werden. Die Schritte 52-50-54 dienen so nur noch der ROI-Bestimmung. Auf diese Weise kann der relativ teure Filterschritt 56 so eingespart werden. Eine Adaption des Modells in 58 ist dadurch möglich, dass die gefilterte Repräsentation der aktuellen Bilddaten der Stützstelle mit dem höchsten Gewicht in 26 gemischt werden mit der gefilterten Repräsentation des Modells in 58.
- Darüber hinaus werden die Bilddaten des Vergleichsobjekts bei 54 auch der ROI-Auswahleinheit 20 zugeführt. Die ROI-Einheit 20 steuert dann die Bildsensoreinheit 12 so an, dass lediglich diejenigen Bildregionen (Region of Interest) angefordert werden, die den Bildregionen der Bilddaten des Vergleichsobjekts aus 54 entsprechen. Dadurch wird die Datenmenge, die von der Bildsensoreinheit 12 ausgegeben werden muss, wesentlich reduziert. Darüber hinaus implementiert die ROI-Auswahleinheit 20 ein Zwischenspeicherverfahren, um einen Überlapp von interessierenden Bildbereichen (ROIs) derselben Iteration einzusparen, so dass auch überlappende Bereiche verschiedener interessierender Bildbereiche lediglich einmal übertragen werden müssen.
- In der ROI-Einheit 20 wird somit ausgehend von dem Vergleichsobjekt, das durch den Zustand Xt induziert ist, die Bildregion (ROI) bestimmt, die tatsächlich nur benötigt wird, um diesen Zustand, also diese Hypothese, die sich in dem Vergleichsobjekt manifestiert, zu bewerten. Dies wird technisch für jede Stützstelle oder sample Xt (i) durchgeführt.
- Anhand der Darstellung der
Fig. 3 ist zu erkennen, dass die erfindungsgemäße Kamera und das implementierte Verfahren in hohem Maße für eine Parallelverarbeitung geeignet ist. So müssen lediglich zur Bestimmung der Wahrscheinlichkeitsdichtefunktion 30, bzw. zur Bestimmung der Approximation der Wahrscheinlichkeitsdichtefunktion durch mehrere Stützstellen, alle Stützstellen zusammengeführt und normiert werden. Die übrigen erläuterten Berechnungsschritte können für jede Stützstelle getrennt durchgeführt werden und sind beispielsweise auch in paralleler Hardware realisierbar. Die erfindungsgemäße Kamera und das erfindungsgemäße Verfahren sind dadurch für Echtzeitanwendungen in besonderem Maß geeignet. - Die Erfindung kann auch für Kameras mit mehr als einem Sensorelement angewendet werden. Beispielsweise ist eine Stereokamera möglich oder auch die Kombination aus einem gewöhnlichen Bildsensor und einem Wärmebildsensor. Eine solche Kombination ist vor allem für Überwachungsanwendungen von Interesse. Eine Fusion der Ergebnisse von den beiden unterschiedlichen Sensoren würde dann beispielsweise in
Fig. 3 in der Einheit 38 durchgeführt. - Die Darstellung der
Fig. 4 zeigt ein erfindungsgemäßes Multikamerasystem in schematischer Darstellung in einem möglichen Anwendungsszenario. Heutzutage werden Badeabschnitte am Meer oder an einem See von Rettungsschwimmern überwacht, um verletzte oder erschöpfte Personen vor dem Ertrinken zu retten. Durch ein Multikamerasystem mit Kameras 60a, 60b, 60c, 60d und 60e wird ein Badeabschnitt überwacht. Die Kameras 60a, 60b, 60c, 60d und 60e sind mittels eines nicht dargestellten drahtlosen Netzwerks miteinander verbunden. Die Kameras sind an einem Pier 62 sowie an Rettungstürmen 64, 66 montiert. Mittels eines geeigneten Überwachungsalgorithmus, beispielsweise realisiert in der Einheit 38 derFig. 3 , soll überwacht werden, ob eine kritische Situation vorliegt, ob etwa ein Schwimmer 68 in Schwierigkeiten ist. Dies kann etwa dadurch geschehen, dass Bewegungsabläufe erfasst und abgeprüft werden sowie durch bilanzartige Überprüfung der Gesamtanzahl der Personen im Wasser. Bei Veränderungen der Gesamtanzahl der Personen im Wasser, die zeitlich länger anhalten, kann dann beispielsweise ein Alarm ausgelöst werden. Rettungsschwimmer und Rettungsfahrzeuge sollen dabei ebenfalls mit drahtlosen, netzwerkfähigen Geräten ausgestattet sein, beispielsweise PDAs (personal digital assistant) oder Laptops mit Netzwerkanschluss. Ganz wesentlich für diese Anwendung der Erfindung ist es dabei, dass die erfindungsgemäßen Kameras lediglich die Ergebnisdaten ausgeben und daher an ebenfalls im Netzwerk befindliche Anzeigegeräte, nur geringe Anforderung bezüglich der Rechenkapazität stellen. Daher ist es mit dem erfindungsgemäßen Multikamerasystem möglich, die Ergebnisse aller Kameras 60a, 60b, 60c, 60d und 60e auf einem externen Gerät mit geringer Rechenleistung anzuzeigen, beispielsweise einem sogenannten PDA. Über dasselbe Netzwerk kann dann selbstverständlich auch eine Kommunikation zwischen den Rettungsschwimmern stattfinden. Neben Rettungsschwimmern könnte beispielsweise auch ein Surfer 70, dessen Surfbrett eine netzwerkfähige Anzeigeeinheit hat, über die Gefahrensituation informiert werden. Über das Netzwerk können die Kameras 60a, 60b, 60c, 60d und 60e selbstverständlich auch neu ausgerichtet, programmiert, konfiguriert und parametriert werden. Darüber hinaus können die Kameras 60a, 60b, 60c, 60d und 60e auch mit einem nichtlokalen Netzwerk, beispielsweise dem Internet, verbunden sein. - Eine weitere mögliche Anwendung der erfindungsgemäßen Kameras liegt in einer sogenannten Indoor-Navigation mit einem Mobiltelefon. Die Kamera ist dabei Bestandteil eines modernen Mobiltelefons. Optional weist das Mobiltelefon weitere Sensoren, wie Inertial-, Trägheits-, und Lagesensoren auf. Das Mobiltelefon weist darüber hinaus eine Recheneinheit auf, in der ein Lokalisierungsalgorithmus realisiert ist. Betritt man beispielsweise einen Flughafen, so wird eine dreidimensionale Karte des Flughafens zusammen mit zusätzlichen symbolischen Aspekten, beispielsweise Terminalbezeichnungen, Restaurants und dergleichen, auf das Mobiltelefon übertragen. Der Zustand des Gesamtsystems Xt bezeichnet in dieser Ausführung die Position innerhalb des Gebäudes. Beim Herumlaufen mit dem entsprechend ausgerüsteten Mobiltelefon werden fortlaufend Bildsequenzen aufgenommen. Das probabilistische Trackingverfahren erlaubt dann, dass sich durch diese Messungen letztlich eine aktuelle Position herauskristallisiert, die dann, beispielsweise auf der 3D-Karte, ausgegeben werden kann.
- In der schematischen Darstellung der
Fig. 5 ist eine weitere Ausführungsform einer erfindungsgemäßen Kamera 71 dargestellt. Die Kamera 71 ist an und für sich identisch zu den bereits beschriebenen Ausführungsformen aufgebaut, im Erfassungsbereich einer Bildsensoreinheit 72 ist aber ein Panoramaspiegel 74 angeordnet. Dieser Panoramaspiegel 74 ist im Abstand von der Bildsensoreinheit 72 angeordnet und ermöglicht eine omnidirektionale Sicht für das Tracking, das heißt es kann in alle Richtungen gleichzeitig verfolgt werden. Die erfassten Bildregionen sind entsprechend zu verzerren ("warping") unter Verwendung bekannter Kalibrierungstechniken. - Mit der erfindungsgemäßen Kamera und dem erfindungsgemäßen Verfahren ist es somit nun möglich, durch Tracking-Verfahren eine Person innerhalb einer Kameraansicht auch automatisch zu verfolgen und so statt des Live-Videostromes nur die Position der Person auszugeben. Durch die Verwendung der erfindungsgemäßen Kamera wird an eine Datenverbindung von der Kamera nach außen nur eine sehr geringe Bandbreitenanforderung gestellt und es ist dadurch problemlos möglich, innerhalb eines Netzwerks von Kameras Überwachungsaufgaben wahrzunehmen. Tatsächlich ist bei Verwendung der erfindungsgemäßen Kameras aufgrund der nur geringen Bandbreitenanforderung an das Netzwerk eine beliebige dezentrale Architektur und eine nahezu unbegrenzte Erweiterbarkeit des Netzwerks mit Kameras möglich.
- In der Praxis der heutigen Überwachungstechnik ist es vielfach noch so, dass die Live-Videoströme einer Vielzahl von Kameras auf einer großen Anzahl von Monitoren angezeigt werden. Wenn dann eine Person verfolgt werden soll, etwa ein potentieller Dieb in einem Kaufhaus oder eine verdächtige Person am Flughafen, so muss der Beobachter einerseits die Verfolgung manuell durchführen, d.h., die Person auf dem jeweiligen Monitor nicht aus seinen Augen verlieren. Andererseits muss er nach Verlassen des Blickwinkels einer Kamera in die zugehörige nächstliegende Kamera weiterschalten und sich in den neuen Blickwinkel hineinversetzen. Wie bereits erwähnt wurde, ist es mit der Erfindung nunmehr möglich, eine Person automatisch zu verfolgen und im Folgenden soll die Darstellung oder Visualisierung der erhaltenen Informationen gemäß der Erfindung beschrieben werden.
- Mit der Erfindung ist es möglich, die Information mehrerer erfindungsgemäßer sogenannter Smart-Kameras zu integrieren und diese dann in einem gemeinsamen Modell zu visualisieren, insbesondere einem dreidimensionalen Weltmodell. Dies ermöglicht es, dass der Pfad von Personen dann - entkoppelt von den jeweiligen Kameras, also über Kameraansichten hinweg - im 3D-Modell visualisiert werden kann. Dabei kann der Blickwinkel auf die Person frei gewählt werden, etwa mit der Person "mitfliegend". Der Blickwinkel ist also nicht mehr an die Blickwinkel der Kameras gebunden. Die erfindungsgemäße Verwendung dreidimensionaler Modelle zur Visualisierung von Überwachungsergebnissen ermöglicht dadurch eine gegenüber bekannten Visualisierungen weniger abstrakte Darstellungen und erleichtert dadurch den Überblick über die aktuellen Ereignisse. Mit der Erfindung wird es darüber hinaus möglich, die in einem gemeinsamen Koordinatensystem visualisierten Überwachungsergebnisse an beliebiger Stelle eines Netzwerks zur Verfügung zu stellen und damit ubiquitär verfügbar zu haben. Die Ausgabe kann auch in gemeinsamen, georeferenzierten Koordinatensystemen erfolgen und in ein dreidimensionales Weltmodell eingebettet sein.
- Einen Überblick über eine erfindungsgemäße Installation gibt die
Fig. 6 . Dargestellt ist mit dem Bezugszeichen 80 der Grundriss eines Gebäudegangs in dem insgesamt sechs erfindungsgemäße Smart-Kameras 82, 84, 86, 88, 90 und 92 positioniert sind. Alle Kameras 82 bis 92 sind mit einer Visualisierungseinheit 94 verbunden, die beispielsweise auch als tragbarer Visualisierungsclient im Netzwerk ausgebildet sein kann. In der Visualisierungseinheit 94 werden die Überwachungsergebnisse, beispielsweise die Ergebnisse eines Personen-Trackings, in ein dreidimensionales Modell eingebettet. Die Verbindungen der Kameras 82 bis 92 mit der Visualisierungseinheit 94 sind lediglich schematisch angedeutet, eingerichtet werden kann jede beliebige Art der Netzwerkverbindung in jeder beliebigen Konfiguration und Topologie, beispielsweise auch als Busverbindung, alternativ auch als drahtlose Netzwerkverbindungen. Zusätzlich sind inFig. 6 noch Darstellungen des Blickwinkels der einzelnen Kameras 82 bis 92 in Form einer jeweiligen Momentaufnahme mit aufgenommen. - Die Darstellung der
Fig. 7 verdeutlicht schematisch die Schritte, die bei der erfindungsgemäßen Visualisierung vorgenommen werden. Die Smart-Kameras 82 bis 92 geben jeweils eine Wahrscheinlichkeitsdichtefunktion aus, die durch Stützstellen approximiert ist. Diese Wahrscheinlichkeitsdichtefunktion kann in Raumkoordinaten ausgegeben werden. An dem inFig. 7 dargestellten Beispiel wird die Wahrscheinlichkeitsdichtefunktion über zweidimensionale Koordinaten x, y ausgegeben. Die ausgegebene Wahrscheinlichkeitsdichtefunktion kann dann beispielsweise dreidimensional dargestellt werden, wobei eine Grundebene die Koordinateebene x, y darstellt und ausgehend von dieser Grundebene der Wert der Wahrscheinlichkeitsdichtefunktion nach oben aufgetragen wird. Diese dreidimensionale Darstellung ist inFig. 7 mit dem Bezugszeichen 96 bezeichnet. Mit dem Bezugszeichen 98 ist in der Darstellung derFig. 7 eine Draufsicht auf die Darstellung der Fig. 96 bezeichnet. Die Werte der Wahrscheinlichkeitsdichtefunktion können dann beispielsweise farbkodiert dargestellt werden. - Diese Wahrscheinlichkeitsdichtefunktionen können dann in einem 3D-Modell 100 visualisiert werden, so dass dann in dem 3D-Modell Positionen, Pfade und Texturen von Personen erscheinen. Wie bereits ausgeführt wurde, ist der Blickwinkel auf dieses 3D-Modell dabei beliebig und es kann, wie in
Fig. 7 dargestellt ist, beispielsweise eine Vogelperspektive gewählt werden, es kann aber auch eine mit der verfolgten Person "mitfliegende" Perspektive gewählt werden. - Im Folgenden soll das erfindungsgemäße Verfahren einschließlich der Visualisierung noch einmal erläutert werden.
- In einem ersten Schritt wird ein dreidimensionales Modell der Umgebung oder eines zu überwachenden Gebäudes aufgenommen oder eingelesen, beispielsweise in Form einer CAD-Datei (Computer-aided engineering). Die Smart-Kameras sind oder werden an geeigneter Stelle im Gebäude angebracht und einem Netzwerk hinzugefügt. Die Smart-Kameras müssen dann relativ zu dem dreidimensionalen Modell kalibriert werden. Vorzugsweise ist das dreidimensionale Modell georeferenziert und nach der Kalibrierung sind damit auch die Ausgaben der Smart-Kameras georeferenziert.
- Im eigentlichen Tracking-Betrieb läuft beispielsweise eine Person in das Blickfeld einer Smart-Kamera und wird durch die Smart-Kamera automatisch detektiert und als neues Zielobjekt aufgenommen und mit dem bereits beschriebenen Partikelfilterverfahren verfolgt. Dies ist für weitere Personen möglich, so dass ein Multi-Person-Tracking realisiert werden kann.
- Die Visualisierung des Trackings erfolgt dann im dreidimensionalen Modell, wobei verschiedene Anzeigemodi vorgesehen werden können. Beispielsweise mit einer einzelnen Person mitfliegend, aus Sicht einzelner Kameras oder auch durch graphische Visualisierung des bisherigen Pfades einer Person. Die Darstellung einer Person oder eines Objekts in dem dreidimensionalen Modell erfolgt mittels eines generischen dreidimensionalen Personenmodells. Optional kann die aktuelle Appearance der Person als Textur auf das dreidimensionale Personenmodell gemappt oder als Sprite, also als ein dem Visualisierungsmodell überlagertes Grafikobjekt dargestellt werden.
- Wesentlich ist, dass die Ergebnisse der Visualisierung im gesamten Netzwerk und damit ubiquitär verfügbar sind. Beispielsweise in einer Leitwarte, auf einem PC, aber auch auf mobilen Endgeräten wie PDAs (Personal Digital Assistant) oder Smart Phones mit Funknetzwerkschnittstelle, die selbst entkoppelt von den Smart-Kameras betrieben werden (WLAN). Dabei kann jeder Benutzer seinen eigenen Anzeigemodus auswählen, unabhängig von den anderen Benutzern und den Smart-Kameras.
- Gemäß einer speziellen Ausführung ist vorgesehen, dass sich ein Benutzer mit seinem netzwerkfähigen Visualisierungsclient, beispielsweise einem PDA/Smartphone, selbst im Sichtbereich einer oder mehrerer Smart-Kameras bewegt und dadurch gleichzeitig auch Eingabe des Trackings ist, mit anderen Worten durch die Smart-Kameras selbst verfolgt wird. Nach Visualisierung der Überwachungsergebnisse auf seinem PDA/Smartphone kann der Benutzer dadurch direkt seine eigene Position sehen und dadurch eine Selbstlokalisierung vornehmen. Auf diesem Effekt aufbauend kann ein Navigationssystem für solch einen Benutzer betrieben werden, das im Unterschied zu GPS (Global Positioning System) auch innerhalb eines Gebäudes hochpräzise funktioniert. Dadurch können beispielsweise Dienste angeboten werden, wie die Zielführung zu einem bestimmten Büro, auch über Stockwerke hinweg, oder in einem Flughafen-Terminal. Die Visualisierung auch auf dem mobilen Endgerät erleichtert dabei das Zurechtfinden für den Benutzer erheblich.
- In einer weiteren speziellen Ausführung können beispielsweise Freunde oder Buddies im dreidimensionalen Modell visualisiert werden. Wenn sich der Benutzer selbst im Sichtbereich der Smart-Kameras befindet, ist dies besonders interessant, da er dann direkt auf seinem mobilen Endgerät sieht, wer in seiner Nähe ist, bzw. wo sich seine Freunde gerade befinden. Dies kann beispielsweise bei Kontaktdiensten für Singles eingesetzt werden, wo dann, wenn die Übereinstimmung gemeinsamer Vorlieben oder ähnliches festgestellt wurde, die Position des potentiellen Partners vom Netzwerk für den anderen Partner freigegeben werden kann, so dass beide sich gegenseitig auf ihren mobilen Endgeräten sehen können und durch eine Zielführungsfunktion gegebenenfalls auch zueinander geführt werden können. Dies ist beispielsweise in einer Diskothek oder einer Hotelanlage möglich, jedoch nicht entfernungsbeschränkt. Ganz speziell ist von Bedeutung, dass bei Verwendung georeferenzierter Visualisierungsmodelle sich zwei Personen auch in voneinander getrennten Kameranetzen aufhalten können und dennoch Informationen übereinander erhalten können, wenn die Kameranetze miteinander vernetzt sind.
- In einer weiteren speziellen Ausführung können auch weitergehende Anfragen implementiert werden, beispielsweise "was ist passiert?". Eine Antwort könnte lauten, dass eine neue Person hinzugekommen ist, dass eine Person einen sicherheitskritischen Bereich im Flughafen betritt. Eine weitere Anfrage kann "wo?" lauten. Eine solche Anfrage kann durch die Angabe einer dreidimensionalen Position beantwortet werden und es können darauf aufbauende Systeme eingesetzt werden, die beispielsweise die Frage beantworten, wo sich ein verlassener Koffer in einem Flughafen befindet.
- Für die Visualisierung der Tracking-Ergebnisse von Bedeutung ist die Ausgabe der jeweiligen Tracking-Position nicht mehr in Koordinaten der Bildebene der jeweiligen Kamera, sondern unter Verwendung der Kalibrierung in einem globalen Koordinatensystem, beispielsweise in einem georeferenzierten globalen Weltkoordinatensystem (WKS). Die ermittelten Tracking-Positionen können dadurch auf der Erde lokalisiert werden.
- Es ist dabei nicht unbedingt erforderlich, sogenannte Stereokameras zu verwenden, die einen bestimmten Blickwinkel räumlich erfassen und dadurch die dreidimensionale Position einer Person ausgeben können. Es kann alternativ auch eine durchschnittliche Personenhöhe angenommen werden und über die Höhe in Kamerapixeln kann auf die echte Höhe der Person unter Verwendung der Kamerakalibrierung rückgeschlossen werden. Auf diese Weise kann ein ungefährer Abstand zur Kamera berechnet werden. Wenn sich mehrere Kameras bezüglich ihres Sichtfelds überlappen, ist eine Abstandsmessung zu der oder den Kameras auch ohne die Annahme einer durchschnittlichen Personenhöhe möglich. Auf diese Weise kann die zweidimensionale Bildebene einer Smart-Kamera auf ein Weltkoordinatensystem erweitert werden.
- Als dreidimensionales Modell für die Visualisierung der Trackingergebnisse kann beispielsweise eine internetbasierte weltumfassende Darstellung verwendet werden, in die sich georeferenzierte Inhalte einbetten lassen. Ein Beispiel hierfür ist die über das Internet zugängliche Visualisierung "Google Earth". In eine solche Darstellung können beispielsweise dreidimensionale Modelle von Gebäuden eingebettet werden und eine solche weltumfassende Darstellung lässt sich auch zur Visualisierung der Trackingergebnisse des dezentralen Smart-Kamera-Netzwerkes verwenden. Beispielsweise werden die Positionen von Personen in dieser Darstellung mittels grüner Punkte angegeben, wobei die Ausdehnung der Punkte eine Konfidenz angibt, wie sicher sich eine Person tatsächlich an der dargestellten Position befindet. Aber auch texturierte Modelle der jeweiligen Person können zur Visualisierung verwendet werden.
- Eine Möglichkeit der Vereinfachung ergibt sich dadurch, dass bei fest montierter Kamera ein Hintergrundmodell erfasst wird, in dem die aufgenommene Szene ohne bewegte Objekte, beispielsweise ohne Personen, präsentiert wird. Die Smart-Kamera baut sich aus dieser Szene ein Hintergrundmodell auf, in dem beispielsweise über mehrere zeitlich aufeinanderfolgende Bilder ein laufender Durchschnitt (running average) gebildet wird, um das Rauschen herauszurechnen. Alternativ kann das Hintergrundmodell unter Heranziehung von Schwellenwerten bezüglich der zeitlichen Veränderung berechnet werden. Die Smart-Kamera hat auf diese Weise ein Hintergrundmodell zur Verfügung, so dass im Betrieb durch Differenzbildungsverfahren und optional zusätzlich durch bekannte Erosions- und Dilatationsverfahren eine Segmentierung realisiert werden kann. Diese Segmentierung beinhaltet gerade alle bewegten Objekte und kann für das Tracking-Verfahren als Region-of-Interest (ROI) verwendet werden. Nur in diesem segmentierten Bereichen kann sich eine zu verfolgende Person befinden. Dieser segmentierte Bereich, der potentiell unzusammenhängend ist, bildet einer Obermenge des eigentlichen Trackings, da sich auch mehrere Personen gleichzeitig im Bild befinden können. Auf diese Weise kann die in der Smart-Kamera erforderliche Rechenlesung verringert werden, da durch die Segmentierung nur die Bereiche weiterverarbeitet werden, in denen sich eine zu verfolgende Person überhaupt befinden kann.
- Mittels des beschriebenen Segmentierungsverfahrens wird darüber hinaus eine automatische Initialisierung auf Bewegung ermöglicht. Dadurch kann bei der Verfolgung mehrerer Objekte oder mehrerer Personen eine Vereinfachung erzielt werden. Die Initialisierung reagiert auf Bewegung relativ zum Hintergrundmodell. Um nun neue Objekte besonders schnell verfolgen zu können, können zusätzliche Stützstellen bevorzugt an Positionen im Bildausschnitt platziert werden, an denen Personen das Blickfeld verlassen oder betreten können. Dies ist im übrigen nicht notwendigerweise der Bildrand. Wenn etwa die Kamera an einem Gang montiert ist, könnte der Eintrittsbereich auch eher in der Bildmitte liegen. Solche Positionen, an denen zusätzliche Stützstellen vorgesehen werden, können vorgegeben werden oder auch adaptiv eingerichtet werden, beispielsweise durch hinreichend langes Trainieren gelernt werden.
- Wie bereits ausgeführt wurde, erfolgt die Visualisierung in einem dreidimensionalen und bevorzugt georeferenzierten Visualisierungsmodell. Die Smart-Kameras arbeiten dabei weiterhin in ihrer jeweiligen Bildebene und eine Umrechnung in Weltkoordinaten erfolgt dann unter Berücksichtigung einer Kamerakalibrierung. Wie bereits ausgeführt wurde, können auch mehrere Kameras zusammen verwendet werden, um mittels bekannter Stereo-Verfahren die Position einer Person oder eines Objekts im Raum zu bestimmen.
- Bei der Objektverfolgung können gemäß der Erfindung zwei unterschiedliche Ansätze gewählt werden.
- Zum einen kann ein sogenanntes dezentrales Tracking durchgeführt werden, indem in jeder Smart-Kamera eigene Partikelfilter laufen. Befindet sich im Blickfeld einer Smart-Kamera ein bewegliches Objekt, so läuft für dieses Objekt ein Partikelfilter. Bewegen sich im Blickfeld der Smart-Kamera zwei bewegliche Objekte, so werden entsprechend zwei Partikelfilter eingerichtet. Die Integration der Ergebnisse des Trackings in ein einheitliches dreidimensionales Modell erfolgt dann erst auf der Ebene der Tracking-Ergebnisse. Zunächst werden dazu die Tracking-Ergebnisse aller Kameras in das dreidimensionale Modell eingezeichnet. Technisch geschieht dies durch Übermittlung der Tracking-Ergebnisse ins Netzwerk, insbesondere zu der Visualisierungseinheit 94 und der dort dann folgenden Visualisierung. Im einfachsten Fall kann mit der Weiterreichung der Tracking-Ergebnisse zwischen den Smart-Kameras so vorgegangen werden, dass dann, wenn zwei Kameras sehr ähnliche Koordinaten im dreidimensionalen Modell liefern, diese beiden Ergebnisse dann zu einem beweglichen Objekt vereinheitlicht werden.
- Alternativ kann ein sogenanntes zentrales Tracking durchgeführt werden. Logisch/algorithmisch gesehen wird hier nur ein einziges Partikelfilter pro beweglicher Person oder beweglichem Objekt über alle Smart-Kameras hinweg betrieben. Ein Zustand X besteht hierbei aus der Position der Person oder des Objektes direkt in Weltkoordinaten, dieser Zustand X wird von der Visualisierungseinheit 94 gehalten und jede Stützstelle über diesem Zustand X kann als Positionshypothese in Weltkoordinaten aufgefasst werden. Jede Smart-Kamera erhält dann diese Koordinaten von der Visualisierungseinheit 94, um die eigene Messung durchzuführen. Die gemeinsame Verarbeitung von Positionshypothese und Messergebnis erfolgt dadurch bereits auf der Messebene, entsprechend in der Smart-Kamera selbst. Die Visualisierungseinheit 94 hat in diesem Fall Aufgaben einer zentralen Verarbeitungseinheit.
- Bei der Anwendung eines dezentralen Trackings werden bewegliche Objekte oder Personen, die sich im Überlappungsbereich des Sichtfeldes zweier Kameras befinden, dadurch von einer Kamera zur nächsten weitergegeben, dass beide Kameras eine ähnliche Position dieser Person oder dieses Objekts in Weltkoordinaten liefern. Ersichtlich wäre die Position ein und desselben beweglichen Objekts bei perfekter Kalibrierung der beiden Kameras exakt dieselbe Position. Die beiden Tracking-Ergebnisse der beiden Kameras können dadurch zu einer Person verknüpft werden. Eine zusätzliche Sicherheit kann dadurch erreicht werden, dass die jeweilige Appearance des Objekts oder der Person miteinander verglichen wird, um sicherzustellen, dass auch die richtige Person zugewiesen wird. Eine Weiterreichung kann auch auf einen Moment verzögert werden, wo sich neben der weiterzureichenden Person nicht zufällig gerade auch noch eine weitere Person oder ein weiteres bewegliches Objekt befindet.
- Im Falle des zentralen Trackings sind die Tracking-Ergebnisse ohnehin von den jeweiligen Smart-Kameras entkoppelt. Eine Person verlässt damit einfach die Bildebene einer ersten Kamera und kommt in die Bildebene einer zweiten Kamera hinein, die Weiterreichung wird somit implizit erledigt, da direkt in Weltkoordinaten gerechnet wird.
- Die Kalibrierung der Kameras in globalen, insbesondere georeferenzierten Koordinaten kann mit Standardverfahren erfolgen, es kann aber auch ein sogenannter Analysis-by-Synthesis-Ansatz verwendet werden. Hierzu wird das dreidimensionale Visualisierungsmodell als Kalibrierobjekt verwendet und die Kameraparameter werden solange iterativ verändert, bis ausgewählte Punkte der Bildebene der Kamera mit den entsprechenden Punkten des dreidimensionalen Visualisierungsmodells übereinstimmen, bis also die reale Kamerasicht mit der Sicht auf das Visualisierungsmodell optimal übereinstimmt. Alternativ kann eine Smart-Kamera auch mit einem oder mehreren Winkelsensoren versehen werden, um dadurch Aufschluss über die jeweilige Blickrichtung der Kamera zu erhalten. Die Position der Kamera kann auch durch bekannte Vermessungstechniken relativ zur Umgebung bestimmt werden, da die Umgebung als 3D-Modell vorliegt ist damit auch die Position relativ zu diesem Modell bekannt.
- Im Folgenden werden alternative Ausführungsformen der Erfindung beschrieben, die sich auf die Art und Weise beziehen, wie die Überwachungsergebnisse ermittelt werden.
- In Bezug auf die angewendete Zeitskala wird das Tracking, also das Verfolgen eines beweglichen Objekts oder einer Person, nur auf einer Zeitskala ausgeführt, nämlich der Skala mit der Bildfrequenz des Bildsensors der Smart-Kamera. Um die Robustheit des Trackings zu erhöhen, ist es nun optional vorgesehen, das Tracking gleichzeitig in verschiedenen Zeitskalen λ auszuführen. Die Zeitskala λ soll hierbei die Dauer bis zum nächstmaligen Auswerten eines aktuellen Sensorbildes angeben, wobei dies in Einheiten von Frames des Sensors angegeben wird. Nach dem bisher beschriebenen Verfahren läuft der Partikelfilter zum Verfolgen eines beweglichen Objektes oder einer Person immer vollständig für jedes Sensorbild ab, so dass λ = 1. Dies bedeutet, dass sich Änderungen im aktuellen Sensorbild immer sofort auf den Partikelfilter und somit das Trackingergebnis auswirken.
- Ein neues Sensorbild wirkt sich grundsätzlich aus auf das Gewicht einer Stützstelle relativ zu anderen Stützstellen und gegebenenfalls auf die Adaption, wenn adaptive Verfahren vorgesehen sind. Verhält sich also ein Objekt, und sei es nur vorübergehend, nicht so, wie dies im Bewegungsmodell angenommen wird, so wirkt sich dies bei einer Zeitskala von λ= 1 sofort aus, selbst wenn sich das Objekt im zeitlichen Durchschnitt immer noch in etwa gemäß dem Bewegungsmodell verhält.
- Wenn beispielsweise eine Person kurzzeitig hinter einem Objekt läuft und so aus Sicht der Kamera verdeckt wird, werden Stützstellen, die die Person eigentlich im bisherigen Verlauf gut verfolgt haben, aufgrund einer schlechten Gewichtung im Messschritt sofort bestraft oder weniger stark gewichtet, da sie sich nicht direkt bewährt haben. Wenn die Person dann wieder hinter dem Objekt auftaucht und damit wieder sichtbar ist, müssen diese Stützstellen erst wieder bestärkt werden. Dies funktioniert nicht immer in der gewünschten robusten Weise, da aufgrund der im vorherigen Messschritt verringerten Gewichtungen der Stützstellen nicht so viele Stützstellen in der unmittelbaren Umgebung der wieder hinter dem Objekt aufgetauchten Person vorhanden sind. Wird darüber hinaus auch eine Adaption der Appearance vorgenommen, so besteht außerdem die Gefahr, dass das die Person verdeckende Objekt mit als Appearance der Person übernommen wird. Dies kann zwar mittels einer von der Konfidenz abhängigen Adaption verhindert werden, dennoch leidet unter diesen Effekten die Qualität des Überwachungsergebnisses.
- Auf einer höheren Zeitskala mit λ > 1 geht eine solche Verdeckung jedoch unter, da sich eine solche höhere Zeitskala wie ein zeitlicher Tiefpass verhält.
- Erfindungsgemäß ist es demnach vorgesehen, jedes zu verfolgende Objekt oder jede zu verfolgende Person auf verschiedenen Zeitskalen zu verfolgen, und zwar auf verschiedenen Zeitskalen gleichzeitig. Das zu verfolgende Objekt kann dadurch über die vollständige Wahrscheinlichkeitsdichtefunktion über der Zeit betrachtet werden. So wie der Zustand des zu verfolgenden Objekts durch Stützstellen abgedeckt wird, so kann auch die Zeitskala durch Stützstellen abgedeckt werden. Alternativ laufen, wie in der Darstellung der
Fig. 8 gezeigt ist, mehrere Zeitskalen parallel, nämlich λ = 1, 2, 4, 8, 16, ..., um den mit dem Kamerasensor erfassten Bildraum über alle Zeitskalen abzudecken. - Wenn dann bei Anwendung verschiedener Zeitskalen bei der Ausführung des Messschrittes beispielsweise die Appearance stark adaptiert würde, das Tracking-Verfahren also davon ausgehen würde, dass sich die Person vom Aussehen her extrem schnell in ein sie verdeckendes Hindernis "verwandelt" hat, so wird auf einer höheren Zeitskala, beispielsweise λ = 2, immer noch die ursprüngliche Appearance der Person beibehalten. Nach dem Wiedereintritt in den Sichtbereich des Kamerasensors würde diese beibehaltene Appearance der höheren Zeitskala dann bevorzugt, begünstigt beispielsweise noch durch eine Gewichtung zwischen Zeitskalen, die die Ergebnisse bei kleineren Werten von λ bevorzugt. Bei gleichzeitiger Anwendung mehrerer Zeitskalen und beispielsweise einem einfachen Vergleich der Appearance zum gleichen Zeitpunkt aber auf Basis unterschiedlicher Zeitskalen führt dies zu sehr robusten Ergebnissen bei der zeitweisen Verdeckung von zu verfolgenden Objekten durch Hindernisse. Die Grundlage für die Anwendung unterschiedlicher Zeitskalen ist dabei die Annahme, dass sich ein zu verfolgendes Objekt in etwa wie das Bewegungsmodell verhält und dabei seine Appearance verschieden schnell ändern kann oder analog dazu sich gemäß dem Appearance-Modell verhält und vom Bewegungsmodell abweicht, jedoch nicht beides gleichzeitig passiert. Beide alternativen Annahmen werden durch die Zeitskalen überwacht und verfolgt, die Richtige kristallisiert sich dann heraus. Die sogenannte Markov-Annahme besagt, dass der aktuelle Zustand nur durch die vorigen Zustände definiert wird. Die Verwendung verschiedener Zeitskalen benötigt auch für Zeitskalen mit λ > 1 nur den jeweils letzten Zustand und erfüllt daher die Markov-Annahme, auch wenn der letzte Zustand weiter in der Vergangenheit liegt als bei der Zeitskala mit λ = 1.
- Technisch wird eine Zeitskala mit λ > 1 dadurch realisiert, dass in einer Iteration, in der kein neues Sensorbild verarbeitet werden soll, der rechenzeitaufwändige Messschritt ausgelassen wird. Stattdessen wird das Objekt nur gemäß dem Bewegungsmodell und optional dem Appearance-Modell vorhergesagt. Da bei einer bestimmten Zeitskala bereits im Vorhinein bekannt ist, wann wieder eine Messung erfolgen soll, kann das Bewegungsmodell und das optionale Appearance-Modell aufgrund der deterministischen Natur alle Iterationen, die keine Messung enthalten, aus Effizienzgründen auch in einem Schritt auf einmal ausführen. In der Darstellung der
Fig. 8 sind alle Iterationen, die keine Messung enthalten, dadurch zu erkennen, dass in den unterschiedlichen Zeitskalen derFig. 8 an diesen Iterationen kein senkrechter Strich eingezeichnet ist. Der Rechenaufwand für die vorstehend beschriebene Erweiterung der Zeitskalen bzw. die Verwendungen mehrerer Zeitskalen ist bei Verwendung des vorstehend beschriebenen Schemas im Durchschnitt knapp doppelt so hoch wie ohne diese Erweiterung. - In Bezug auf die bereits erläuterte Möglichkeit der Segmentierung des Hintergrundbildes in unbewegliche Bereiche und Bereiche, in denen potentiell bewegliche Objekte auftauchen können, kann die Verwendung mehrerer Zeitskalen auch als Kontrollinstanz für Verdeckungen von zu detektierenden Objekten benutzt werden. Die Verwendung mehrerer Zeitskalen kann jedoch auch bei beweglichen Kameras verwendet werden, wo die Segmentierung nicht direkt anwendbar ist. Wenn zudem eine verfolgte Person nicht von einem statischen Hindernis, sondern von einer weiteren Person verdeckt wird, dann kann die Verwendung mehrerer Zeitskalen auch bei vorhandenen Segmentierungsverfahren helfen, da diese ja lediglich bewegliche Objekte zum Hintergrund, aber nicht zwischen beweglichen Objekten oder Personen segmentieren.
- Im Folgenden soll nun noch die erfindungsgemäße Möglichkeit erörtert werden, die Appearance eines zu verfolgenden Objekts oder einer zu verfolgenden Person, also dessen Aussehen und Erscheinung, adaptiv anzupassen. Beim Verfolgen einer Person wird mittels des bereits erörterten Partikelfilters nicht nur ein Zustand X verfolgt, sondern eine ganze Wahrscheinlichkeitsdichtefunktion über diesen Zustand X, approximiert durch Stützstellen. In analoger Weise kann für die Appearance eines zu verfolgenden Objekts vorgegangen werden. Normalerweise ist die Appearance des Zielobjektes im Partikelfilter nur für alle Stützstellen gemeinsam vorhanden und zusätzlich auch noch fest. Eine eingeschränkte Adaption kann mittels des sogenannten α-Blendings vorgenommen werden, aber auch hier ist nur genau eine Appearance des Zielobjekts zu jeder Zeit vorgesehen. Neben verschiedenen Hypothesen über den aktuellen Zustand X des Zielobjekts, sollen nun auch mehrere Appearances A des Zielobjektes gleichzeitig verfolgt werden. Darüber hinaus sollen diese beiden Aspekte über mehrere Zeitskalen λ verfolgt werden.
- Das Ziel ist demnach, die Appearance zu adaptieren und dabei mehrere Appearances gleichzeitig zu verfolgen. Dazu wird die Appearance als ein Teil des Zustandes definiert, gemäß Xneu: = (X, A), d.h. der neue Zustand hängt ab von dem bisherigen Zustand X und der Apperance A. Das bereits beschriebene Partikelfilterverfahren muss hierzu nicht verändert werden. Analog zum Bewegungsmodell existiert damit dann noch ein Appearance-Modell, das aus der alten Appearance eine neue vorhersagt.
- Für dieses Appearance-Modell existieren mehrere Möglichkeiten zur Realisierung. Ziel ist eine besonders niederdimensionale Parametrierung, da die Komplexität, mit verursacht durch die Anzahl der Stützstellen, eines Partikelfilters exponentiell mit der Anzahl der Freiheitsgrade wächst und dieser dadurch sehr ineffizient wird. Eine niederdimensionale Parametrierung kann beispielsweise ein analytisches Appearance-Modell eingesetzt werden, bei dem ein analytisches Modell der ganzen Verteilung verwendet wird, anstatt die Appearances direkt mit eigenen Stützstellen abzutasten. Diesbezüglich sind zwei Möglichkeiten vorgesehen:
- 1. Verwendung eines parametrischen Modells, das mittels statistischen Methoden aus Trainingsdaten gelernt wird. Dies ist im Falle von Überwachungsaufgaben allerdings nur dann möglich, wenn die zu verfolgenden Objekte oder Personen zuvor eintrainiert werden können.
- 2. Die Verwendung eines analytischen Modells, um eine stützstellenbasierte Annäherung zu vermeiden. Hierzu kann beispielsweise ein sogenannter running average aus den letzten Appearances oder bevorzugt ein sogenanntes α-Blending aus der letzten Appearance und der aktuellen verwendet werden.
- Im Rahmen der Erfindung kann die Verfolgung von Personen und Objekten auch konturbasiert erfolgen. Die bisher beschriebenen Verfahren basieren vorrangig auf der Farberfassung von zu verfolgenden Objekten. Konturbasierte Verfolgungsverfahren können mit der Erfindung realisiert werden, die bereits beschriebene grundsätzliche Struktur des Verfahrens und der Aufbau der Smart-Kameras bleibt unberührt. Zur Implementierung eines konturbasierten Verfolgungsverfahrens beschreibt jede Stützstelle X nun eindeutig eine Kontur, beispielsweise die Kontrollpunkte eines Splines. Hierzu wird ein Spline in Bildkoordinaten erzeugt, der über das Sensorbild gelegt wird. Nun wird die Differenz dieser Konturschätzung zum aktuellen Sensorbild berechnet. Beispielsweise werden dazu, siehe
Fig. 9 , in insbesondere regelmäßigen Abständen entlang der Kontur Punkte betrachtet, an denen senkrecht zur Kontur der Abstand zur nächsten Kante im Sensorbild berechnet wird. Diese inFig. 9 entlang der Kontur eingezeichneten senkrechten Linien haben eine definierbare Maximallänge, bis zu der nach einer Kante gesucht wird. Ist bis zu dieser Maximallänge keine Kante gefunden worden, so wird diese Maximallänge angenommen und so die Differenz nach oben beschränkt und der Suchbereich eingeschränkt. Die Summe oder die quadrierte Summe dieser Differenzen wird in die bisherige Gauss-Funktion eingesetzt und führt auf diese Weise zu einem eindimensionalen Differenzwert für diese Stützstelle. - Im Rahmen der Erfindung kann die Region-of-Interest (ROI) nur aus der Überlagerung dieser senkrechten Linien bestehen und nur diese Überlagerung der senkrechten Linien muss von der Smart-Kamera oder dem Sensor übertragen werden. Für alle Stützstellen zusammen ist also allein die Überlagerung all dieser senkrechten Linien von der Smart-Kamera anzufordern. Die Darstellung der
Fig. 9 zeigt im oberen linken Bild die aus einer Stützstelle X entstehende Kontur und die entlang dieser Kontur beabstandeten Punkte. InFig. 9 oben rechts sind dann an allen Punkten die angesprochenen senkrechten Linien eingezeichnet. InFig. 9 unten links ist die Kontur zusammen mit den senkrechten Linien zu erkennen und inFig. 9 unten rechts sind lediglich noch die senkrechten Linien dargestellt, die letztendlich als ROI vom Sensor anzufordern sind. - Statt einer Kontur kann auch ein Active Appearance Modell (AAM) verwendet werden, wie dies im Stand der Technik bekannt ist.
- Die konturbasierten Verfahren können auch mit den histogrammbasierten verknüpft werden. Eine Stützstelle X besteht dann aus der Konkatenation beider Zustandsvariablen. Bei der Berechnung des Gewichts jeder Stützstelle im Messschritt werden in diesem Fall die Ergebnisse der Konturmessung und der bisherigen histogrammbasierten Messung gewichtet aufsummiert. Die Gewichtung kann dabei eingestellt werden.
- Der Zustand X kann darüber hinaus neben der Position des Objektes auch dessen Geschwindigkeit nach Richtung und Betrag enthalten, gegebenenfalls auch die winkelmäßige Ausrichtung des Objekts. Im Falle einer konturbasierten Verfolgung enthält der Zustand dann die Kodierung der Kontur, wie beschrieben etwa die Kontrollpunkte eines Splines.
- In der Darstellung der
Fig. 10 ist beispielhaft die Visualisierung des Überwachungsergebnisses durch Visualisierung der Wahrscheinlichkeitsdichtefunktion einer Person über der Zeit t dargestellt. Eine solche Visualisierung wird mittels Methoden des Volumenrenderings erzeugt und zeichnet die Bahn einer verfolgten Person nach, wobei unterschiedliche Grau- oder Farbkodierungen die Aufenthaltswahrscheinlichkeiten entlang des Pfades darstellen. - Eine Anwendung der Erfindung kann beispielsweise in der Erkennung von verlassenen Koffern, beispielsweise in Bahnhöfen oder Flughäfen vorgenommen werden. Hierzu werden fest montierte Kameras und, wie bereits beschrieben, mehrfache Zeitskalen verwendet. Es sollen dabei Objekte erkannt werden, die auf einer Zeitskala hinzugekommen sind. Vergleichbar mit einem Bandpass werden dadurch Objekte ausgefiltert, die sich zu schnell ändern, beispielsweise herumlaufende Personen oder Bildrauschen. Ebenso sollen zu tiefe Frequenzen ausgefiltert werden, also der Hintergrund bzw. hinreichend langsame Änderungen des Hintergrundes.
- Die Erkennung von herrenlosen Koffern in einem Flughafen lässt sich in besonders vorteilhafter Weise mit der Überwachung von Personen verbinden, da es von besonderem Interesse ist, die Person, die den Koffer abgestellt hat, sowohl vor dem Abstellen aber auch danach zu verfolgen. Dazu kann das System alle im Sichtbereich der Kameras erkennbaren Personen verfolgen. Es ist dabei festzuhalten, dass diese Personen nicht alle unbedingt dem Benutzer angezeigt werden müssen. Wenn eine der verfolgten Personen beispielsweise einen Koffer abstellt, so kann das System dies sofort dem Benutzer darstellen, indem neben dem Koffer auch der Pfad der zugehörigen Person, die diesen Koffer potentiell abgestellt hat, verfolgt wird. Dargestellt wird dann sowohl der Pfad vor dem Abstellen wie auch nach dem Abstellen, da ja alle im Sichtbereich liegenden Personen vorsorglich verfolgt wurden. Dem Benutzer kann dadurch lediglich die wichtige Information angezeigt werden, ohne diesen mit für die Anwendung uninteressanten Informationen zu überfluten. Der Benutzer kann dadurch sofort die "was?"-Frage klären, nämlich ein verlassener Koffer, und die "wo?"-Frage im dreidimensionalen Visualisierungsmodell anschaulich verfolgen. Dem Sicherheitspersonal im Flughafen kann diese Visualisierung auf einem mobilen Visualisierungsclient eingebettet in ein dreidimensionales Modell eingeblendet werden und - da sie selbst auch vom System verfolgt und somit lokalisiert werden - eine Routenplanung zur Zielperson oder zum Koffer berechnet wird. Diese Routenplanung wird dabei kontinuierlich upgedatet, da die Bewegung der verfolgten Zielperson ja in Echtzeit einfließt.
- Weitere Aspekte und Merkmale der Erfindung ergeben sich aus der folgenden wissenschaftlichen Abhandlung, die darüber hinaus auch realisierte Beispiele beschreibt.
- Sven Fleck
WSI/GRIS, Universität Tübingen
Sand 14, 72076 Tübingen, Germany
Tel.: +(49) 7071 2970435, Fax: +(49) 7071 295466, email: [email protected] web: www.gris.uni-tuebingen.de - Heutzutage finden Anwendungen zur Objektverfolgung unter Verwerdung von Netzwerken mit verteilten Sensoren immer größeren Anklang, sowohl im Bereich der Überwachungstechnik (Flughäfen, Bahnhöfe, Museen, öffentliche Einrichtungen) als auch im Bereich der industriellen Bildverarbeitung (sichtgeführte Roboter ("Visual Servoing") und Fabrikautomatisierung). Traditionelle, zentralisierte Ansätze bergen mehrere Nachteile wie limitierte Übertragungsbandbreiten, hohe Rechenzeitanforderungen und somit begrenzte örtliche Auflösungen und Bildwiederholraten der verwendeten Kameras.
In diesem Artikel wird eine netzwerkfähige intelligente Kamera ("Smart Camera") zur probabilistischen Verfolgung von Objekten präsentiert. Sie ist fähig, Objekte in Echtzeit zu verfolgen und demonstriert einen Ansatz, der sehr sparsam mit der Übertragungs-Bandbreite umgeht, da die Kamera nur die Ergebnisse der Verfolgung übertragen muß, welche auf einer höheren Abstraktionsebene liegen. - In heutigen Bildverarbeitungssystemen versteht man unter Kameras typischerweise nur einfache Sensoren. Die Datenverarbeitung wird erst vollzogen, nachdem der komplette rohe Videostrom über eine teure und oftmals in der Distanz beschränkte Verbindung zu einer zentralen Verarbeitungseinheit (z.B. zu einem PC) übertragen ist. Aus Sicht des Autors erscheint es jedoch sinnvoller, die Verarbeitung auch physikalisch in der Kamera selbst durchzuführen: Was algorithmisch zur Kamera gehört soll auch physikalisch in der Kamera berechnet werden. Die Idee besteht also darin, die Information dort zu verarbeiten, wo sie auftritt - direkt am Sensor - und nur die Ergebnisse zu übertragen, die so auf einer höheren Abstraktionsebene liegen. Dies lehnt sich an dem zunehmenden Trend von in sich geschlossenen und netzwerkfähigen Kameras an.
- Im Folgenden wird erstmalig ein Prototyp einer netzwerkfähigen intelligenten Kamera zur probabilistischen Objektverfolgung in Echtzeit vorgestellt. Objektverfolgung spielt eine zentrale Rolle für viele Anwendungen, insbesondere innerhalb der Robotik (sichtgeführte Roboter, RoboCup-Roboterfußball), Überwachungstechnik (Personenverfolgung) als auch bei der Mensch-Maschine-Schnittstelle, bei der Motion-Capture-Bewegungsverfolgung, im Bereich der Augmented Reality und für 3D-Fernsehen.
- Partikel-Filter haben sich heutzutage als eine wichtige Art der Objektverfolgung etabliert [1, 2, 3]. Die verwendeten visuellen Modalitäten beinhalten Form [3], Farbe [4, 5, 6, 7] oder eine Kombination von Modalitäten [8, 9]. Das Partikel-Filter-Verfahren wird in Abschnitt 2 beschrieben. Hier wird ein Ansatz basierend auf Farbhistogrammen verwendet, der speziell auf die Anforderungen zur technischen Realisierung eingebettet in der Kamera angepasst wurde. Die Architektur der intelligenten Kamera wird in Abschnitt 3 beschrieben. Anschließend werden verschiedene Vorteile des vorgeschlagenen Ansatzes diskutiert. Experimentelle Ergebnisse dieses Ansatzes werden in Abschnitt 4 illustriert, anschließend folgt eine Zusammenfassung.
- Partikel-Filter können mit mehreren gleichzeitigen Hypothesen und mit nichtlinearen Systemen umgehen. In Anlehnung an die Notation von Isard und Blake [3] definiert Z t alle Messungen {z 1 , ..., z t} bis zum Zeitpunkt t, Xt beschreibt den Zustandsvektor zur Zeit t der Dirriension k (Position, Geschwindigkeit etc. des Zielobjektes). Partikel-Filter basieren auf dem Theorem von Bayes, um zu jedem Zeitschritt die A-Posteriori Wahrscheinlichkeitsdichtefunktion (pdf) p(Xt |Zt ) unter Verwendung aller vorhandener Information zu berechnen:
- Diese Gleichung wird wie folgt rekursiv ausgewertet. Die Idee des Partikel-Filters ist es, die Wahrscheinlichkeitsdichtefunktion ("probability density function") (pdf) über X t durch eine Menge gewichteter Stützstellen ("Samples") St zu approximieren. Jede Stützstelle s besteht aus dem Zustandsvektor X und einem Gewicht π, wobei
Fig. 11 zeigt das prinzipielle Verfahren eines Partikel-Filters mit 8 Stützstellen. Die einzelnen Schritte werden im Folgenden erklärt. - • Auswahlschritt Zuerst wird das kumulative Histogramm über den Gewichten aller Stützstellen berechnet. Anschließend wird, abhängig vom Gewicht einer jeden Stützstelle
- • Vorhersageschritt Im Vorhersageschritt wird der neue Zustand Xt berechnet:
Verschiedene Bewegungsmodelle zur Implementierung von p(Xt |X t-1) sind denkbar. Hier werden drei einfache Bewegungsmodelle verwendet (wobei die Anzahl, wieviel Stützstellen zu welchem Bewegungsmodell gehören, parametriert werden kann): Ein Modell mit zufälliger Position ("random position model"), ein Modell mit konstanter Position ("zero velocity model") und ein Modell mit konstanter Geschwindigkeit ("constant velocity model") (Xt = AX t-1 + w t-1). Jedes dieser Modelle wird ergänzt durch eine Diffusion w t-1 gemäß einer Gauß-Verteilung, um die Stützstellen zu streuen und Bewegungen des Zielobjektes zu tolerieren, die vom Bewegungsmodell abweichen. Der Zustand hat dabei die Form: - • Messungsschritt Im Messungsschritt wird der neue Zustand Xt abhängig von der neuen Messung zt (d.h. abhängig vom neuen Kamera-Sensorbild) gewichtet.
- Wie bereits erwähnt wird hier ein Partikel-Filter-Verfahren beschrieben, das auf Farbhistogrammen arbeitet. Dies ermöglicht eine rotationsinvariante Objektverfolgung und ermöglicht Robustheit gegenüber teilweisen Verdeckungen und Verformungen des Zielobjektes. Anstatt im Standard-RGB-Farbraum zu arbeiten, wird hier ein HSV-Farbmodell verwendet: Ein 2D-Hue-Saturation-Histogramm in Verbindung mit einem 1D-Value-Histogramm wurde entwickelt als Raum zur Repräsentation der Ansicht ("Appearance") des Zielobjektes. Dies bewirkt die folgenden Spezialisierungen des oben beschriebenen abstrakten Messungsschrittes.
- Jede Stützstelle
wobei r die Distanz zum Zentrum der Bildregion bezeichnet. Wenn dieser Kernel verwendet wird, erhält man folgende Farbverteilung für die Stützstelle
mit Bin-Nummer b, Pixel-Position w innerhalb der Bildregion (ROI), Bandbreite - Nun wird das Histogramm des Zielobjektes mit dem Histogramm jeder Stützstelle verglichen: Für diesen Zweck wird hier das Bhattacharyya-Ähnlichkeitsmaß [4] verwendet, sowohl im HS- wie auch im V-Histogramm einzeln.
wobei
Eine geringe Bhattacharyya-Distanz führt also zu einem hohen Gewicht - Zur Demonstration des Prototypen wird hier eine mvBlueLYNX 420CX Kamera von Matrix Vision [10] wie in
Fig. 12 gezeigt als Basis verwendet. Die Kamera beinhaltet einen Sensor, einen FPGA, einen Prozessor und eine Ethernet-Netzwerkschnittstelle. Genauer gesagt beinhaltet sie einen CCD-Sensor mit VGA-Auflösung (Progressive Scan) mit einem Bayer-Farb-Mosaik. Ein Xilinx Spartan-IIE FPGA wird zur Low-Level-Verarbeitung benutzt. Außerdem ist ein 200 MHz Motorola PowerPC Prozessor mit MMU- und FPU-Einheit enthalten, auf dem Embedded Linux betrieben wird. Er ist mit 32 MB SDRAM- und 36 MB FLASH-Speicher verbunden. Des weiteren beinhaltet die Kamera eine 100 MBit/s Ethernet Schnittstelle, einerseits zur Aktualisierung im Feld ("Field Upgradability"), andererseits zur Übertragung der Ergebnisse der Objektverfolgung nach außen. Zur direkten Verbindung mit Industriesteuerungen sind des weiteren mehrere Ein-/Ausgänge vorhanden. Außerdem sind ein analoger Video-Ausgang und zwei serielle Schnittstellen vorhanden, an denen Monitor und Maus zu Debuggingund Zielobjekt-Initialisierungszwecken angeschlossen werden können. Die Kamera ist nicht nur als Prototyp unter Laborbedingungen gedacht, sie wurde auch entwickelt, um rauhen Industrieumgebungen Rechnung zu tragen. -
Fig. 13 zeigt die Architektur der Smart Camera. - In jeder Iteration wird folgendes ausgegeben:
- • Die Wahrscheinlichkeitsdichtefunktion (pdf) p(Xt |Z t), approximiert durch die Stützstellen-Menge
- • Der Erwartungs-Zustand (Mean-Estimate-State)
- • Der Maximum-Likelihood-Zustand
- Die Ausgabe der Smart Camera wird über Ethernet mittels Sockets übertragen. Auf der PC-Seite können diese Daten dann in Echtzeit visualisiert und auf Datenträger zur späteren Auswertung gespeichert werden.
- Dieser Smart-Camera-Ansatz bietet vielfältige Vorteile:
- • Geringe Bandbreitenanforderungen der Kamera. Die rohen Bilddaten werden direkt in der Kamera verarbeitet. Somit muß nur die approximierte Wahrscheinlichkeitsdichtefunktion (pdf) des Zustandes des Zielobjektes von der Kamera übertragen werden, was nur relativ wenige Parameter erfordert. Dies ermöglicht die Nutzung von Standardnetzwerken (z.B. Ethernet) mit praktisch unbegrenzter Reichweite. Hier summieren sich die gesamten zu übertragenden Daten auf (N * (k + 1) + 3) Werte pro Frame. Wenn etwa N = 100 Stützstellen verwendet werden und kein Geschwindigkeitsmodell verwendet wird (k = 2), sind 303 Werte pro Frame zu übertragen. Dies ist verhältnismäßig wenig im Vergleich dazu wenn alle Pixel des rohen Bildes übertragen werden würden: Beispielsweise werden zur rohen Übertragung in VGA-Auflösung selbst ohne Bayer-Mosaik-Farbumrechnung schon etwa 307000 Pixelwerte pro Frame benötigt. Selbst bei (moderaten) 15 Bildern/s ist hierfür eine Übertragungsrate von ca. 37 MBit/s erforderlich, was etwa 1/3 der Standard-Bandbreite von 100 MBit/s entspricht.
- • Kein Berechnungen außerhalb der Kamera notwendig. Netzwerkfähige externe Geräte (PCs oder Maschinensteuerungen in der Automatisierungstechnik) müssen sich nicht mehr mit der Low-Level-Datenverarbeitung beschäftigen, die logisch gesehen zur Kamera gehört. So können auf diesen stattdessen High-Level-Anwendungen realisiert werden, die auf den Ergebnissen (auch mehrerer) solcher Smart Cameras basieren. Auch sind mobile Geräte (PDAs/Handys) verwendbar, die z.B. über Funk-Netzwerkverbindung etwa im Falle einer Überwachungsanwendung die Ausgabe der Objelctverfolgung aller Smart Cameras anzeigen können. Außerdem ist es möglich, die Smart Camera direkt an eine Maschinensteuerung anzuschließen (selbst wenn diese nicht dedizierte Ressourcen für die Datenverarbeitung externer Daten besitzt), etwa an eine Robotersteuerung zur sichtgeführten Montage ("Visual Servoing"). Für diesen Zweck reicht es sogar aus, allein den Erwartungs-Zustand (Mean-Estimate-State) oder den Maximum-Likelihood-Zustand inklusive der Konfidenz an deren Eingänge zu übertragen um die Maschine unter Echtzeitbedingungen anzusteuern.
- • Höhere Auflösung und Bildwiederholrate der Kamera. Da der rohe Videostrom bei dem vorgeschlagenen Ansatz nicht mehr durch die Bandbreite der Verbindung nach außen beschränkt ist, können Sensoren mit höherer örtlicher und zeitlicher Auflösung verwendet werden, da aufgrund der Nähe der Verarbeitungseinheit direkt am Sensor eine höhere Übertragungsgeschwindigkeit technisch viel einfacher realisierbar ist als außerhalb der Kamera. Die konventionelle Technik (Kamera + externer Rechner (PC)) hingegen birgt hier folgende Nachteile:
- 1. Wenn immer das komplette Bild in voller Auflösung auf den PC übertragen werden würde, um die gesamte Verarbeitung dort auszuführen, werden die Bandbreitenanforderungen heutiger Netzwerkverbindungen schnell überschritten. Dies gilt umso mehr bei Multi-Kamera-Systemen, da diese sich die Netzwerkbandbreite teilen müssen. Werden hingegen Standard-Kameraverbindungen verwendet werden, die ja höhere Bandbreiten bieten (etwa CameraLink), ist die Distanz zur Kamera auf wenige Meter limitiert (ganz abgesehen davon, daß aufgrund des zentralen Hosts gar kein dezentrales Netzwerk entsteht).
- 2. Wenn nur die aus Sicht des Partikel-Filter-Verfahrens interessanten (also durch die Stützstellen induzierten) Bildregionen (ROIs) übertragen würden, wird die Verbindung zwischen Kamera und PC zum Teil der Rückkopplungsschleife des Objektverfolgungsverfahrens. Nichtdeterministische Netzwerk-Effekte können dann bewirken, daß die Vorhersage des Objektverfolgungsverfahrens durch den Partikel-Filter, entsprechend den Zuständen der Stützstellen, d.h. ROIs, gar nicht mehr synchron mit der "echten Welt" läuft und so an falschen Stellen gemessen wird.
- • Multi-Kamera-Systeme. Als Folge obiger Vorteile ermöglicht dieser Ansatz eine optimale Skalierung mit der Anzahl Kameras. Dies ist wichtig, damit Multi-Kamera-Systeme in einer dezentralen Infrastruktur zusammenarbeiten können, wie sie etwa bei der Überwachung von Flughäfen auftreten.
- • In sich geschlossenes System mit kleinem Formfaktor. Durch Einbettung des Verfahrens in die Kamera entsteht ein in sich abgeschlossenes System mit sehr kompaktem Formfaktor. So kann auch eine Installation an Orten mit beschränkten Platzbedingungen erfolgen, oder etwa direkt an einer Roboterhand.
- • Parametrierbarkeit. Die Implementierung erlaubt eine Parametrierbarkeit des Partikel-Filters in weiten Bereichen. Dies beinhaltet die Anzahl Stützstellen N, die Größe der Bildregion (ROI) (Hx, Hy ), die Anzahl der Bins im Histogramm (in H, S, V), der Faktor für das Mischungsverhältnis HS + V (zwischen Hue-Saturation (ρ HS ) und Value (ρ V )), der Varianz-Vektor zur Diffusion im Bewegungsmodell, die Varianz zur Bhattacharyya-Gewichtung und die Kombination der Bewegungsmodelle.
- • Vorteile des Partikel-Filter-Verfahrens. Ein auf einem Kalman-Filter beruhendes Verfahren eingebettet in eine Smart Camera würde ähnliche Vorteile bieten wie die bisher genannten. Jedoch weist ein solches Verfahren mehrere Nachteile auf, da es nur unimodale Wahrscheinlichkeitsdichtefunktionen (pdfs) und lineare Modelle handhaben kann. Ein Partikel-Filter-Verfahren hingegen approximiert die von der Kamera auszugebende - potentiell beliebig geformte - Wahrscheinlichkeitsdichtefunktion (pdf) p(Xt |Zt ) effizient durch Stützstellen, so daß nur eine moderat höhere Übertragungsbandbreite gegenüber einem Kalman-Filter-Verfahren erforderlich ist. Dagegen ist der Robustheitsgewinn immens.
- Im Folgenden werden einige Ergebnisse beschrieben. Diese bilden jedoch nur ein Ausschnitt von dem was auf der Projekt-Webseite [11] in höherer Qualität verfügbar ist. Im ersten Experiment wird die Kamera mit einem Würfel-Objekt initialisiert. Dazu wird sie durch Präsentieren des Objektes vor der Kamera trainiert, sie speichert die zugehörige Farbverteilung als Referenz des Zielobjektes ab. Die Verfolgungsleistung war sehr zufriedenstellend: Die Kamera kann das Zielobjekt bei einer Bildwiederholrate von 15 Bilder/s und einer Sensorauflösung von 640x480 Punkten robust über die Zeit hinweg verfolgen. Um eine höhere Rechenzeiteffizienz zu erreichen, arbeitet das Verfahren direkt auf den rohen und somit durch das Bayer-Mosaik noch immer farbgefilterten Pixeln: Anstatt zuerst eine teure Bayer-Mosaik-Farbumrechnung vorzunehmen und dann letztlich doch nur das Histogramm darüber zu verwenden, welches keine örtliche Information enthält, wird hier jede Vier-Pixel-Bayer-Nachbarschaft als ein RGB-Pixel interpretiert. (Dabei werden die beiden Grünwerte gemittelt.) Dies führt zu einer QVGA-Auflösung als Eingabe für das Verfahren zur Objektverfolgung. Die gesamten Bandbreitenanforderungen der Kamera sind sehr moderat, es werden nur ca. 30 kB/s benötigt (bei der Verwendung von 100 Stützstellen). Im ersten Experiment wird ein Würfel verfolgt. Dieser wird zuerst vertikal, dann horizontal und anschließend auf einer Kreisbahn bewegt. Die von der Kamera ausgegebene approximierte Wahrscheinlichkeitsdichtefunktion (pdf) p(Xt |Z t) über der Zeit t ist in
Fig. 14 illustriert, projiziert auf x- und y-Richtung. - Ausgehend von dieser Abbildung beleuchtet
Fig. 15 die Kreisbewegung innerhalb der Würfelsequenz im Detail. Dazu ist zu verschiedenen Zeitpunkten je ein Screenshot der aktuellen Positionen der Stützstellen in Verbindung mit ihren Gewichten gegeben. Hierbei ist zu erwähnen, daß die Tatsache, daß die Kamera hier statisch montiert ist, nicht ausgenutzt worden ist, die präsentierte Leistung wird also bereits erzielt ohne eine Hintergrundsegmentierung als Vorverarbeitung vorzunehmen. - Im zweiten Experiment wird das Verhalten der Smart Camera im Kontext von Überwachungsanwendungen untersucht: Die Smart Camera wird mit dem Gesicht einer Person als Zielobjekt trainiert. Es stellt sich heraus, daß auch das Gesicht erfolgreich in Echtzeit verfolgt werden kann.
Abb.16 zeigt einige Ergebnisse während des Betriebs. - In diesem Artikel wurde eine Smart Camera zur Echtzeit-Objektverfolgung präsentiert. Durch die Verwendung von Partikel-Filtern auf HSV-Farbverteilungen bietet sie robuste Verfolgungsleistung, da sie mit mehreren Hypothesen gleichzeitig umgehen kann. Dennoch ist ihre Bandbreitenanforderung sehr gering, da nur die approximierte Wahrscheinlichkeitsdichtefunktion (pdf) p(Xt |Zt ) ausgegeben wird, zusammen mit dem Erwartungswert und dem Maximum-Likelihood-Zustand des Zielobjektes. Nur ca. 15 kB/s Bandbreite sind erforderlich. So wird die teure Übertragung des rohen Videostromes als Basis für eine externe Weiterverarbeitung vermieden. Die Ausgabe der Kamera kann auch direkt genutzt werden, beispielsweise um sie an die Steuerung eines Industrieroboters anzuschließen oder etwa zur Kommunikation zwischen mehrerer solcher Kameras auf einer höheren Abstraktionsebene. Aufgrund der geringen Bandbreitenanforderungen ist eine ubiquitär Verfügbarkeit eines solchen gesamten Kamera-Netzwerks gegeben. Es ist also möglich, die Ausgabe aller Kameras zu erfassen, und dies überall im gesamten Netzwerk (insbesondere in jeder anderen Kamera). Die Smart Camera Implementierung ist in weiten Teilen parametrierbar, um sie sowohl an die Hardware-Ressourcen als auch an die Eigenschaften der Szene anzupassen. Als erste Erweiterung soll die Skala mit in den Zustand X aufgenommen werden, um Größenveränderungen mit verfolgen zu können. Des weiteren ist geplant, die Ansicht ("Appearance") des Zielobjektes während der Laufzeit automatisch zu adaptieren und nachzuführen, um die Robustheit der Objektverfolgung bei Beleuchtungsänderungen weiter zu erhöhen. Außerdem ist geplant, ein Multi-Kamera-System aufzubauen, um auch die Vorteile, die bei der Kommunikation zwischen Kameras auf dieser höheren Abstraktionsebene auftreten, zu demonstrieren (beispielsweise als Basis für eine Personenverfolgung in einer Überwachungsanwendung).
- Wir bedanken uns bei Matrix Vision für deren großzügige Unterstützung und die erfolgreiche Zusammenarbeit.
-
- [1] N. D. F. Arnaud Doucet and N. Gordon, Sequential Monte Carlo Methods in Practice. Springer Verlag, 2001.
- [2] "Special issue on: Sequential state estimation: From kalman filters to particle filters," Proceedings of the IEEE, vol. 92, no. 3, 2004.
- [3] M. Isard and A. Blake, "Condensation - conditional density propagation for visual tracking," 1998.
- [4] D. Comaniciu, V. Ramesh, and P. Meer, "Kernel-based object tracking," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 25, no. 05, pp. 564-575, 2003.
- [5] K. Okuma, A. Taleghani, N. de Freitas, J. J. Little, and D. G. Lowe, "A boosted particle filter: Multitarget detection and tracking," in ECCV 2004: 8th European Conference on Computer Vision, 2004.
- [6] K. Nummiaro, E. Koller-Meier, and L. V. Gool, "A color based particle filter," 2002.
- [7] P. Prez, C. Hue, J. Vermaak, and M. Gangnet, "Color-based probabilistic tracking," in European Conference on Computer Vision, ECCV'2002, LNCS 2350, Copenhaguen, Denmark, June 2002, pp. 661-675.
- [8] P. Prez, J. Vermaak, and A. Blake, "Data fusion for visual tracking with particles," Proceedings of IEEE, vol. 92, no. 3, pp. 495-513, 2004.
- [9] M. Spengler and B. Schiele, "Towards robust multi-cue integration for visual tracking," Lecture Notes in Computer Science, vol. 2095, p. 93ff., 2001.
- [10] "Matrix vision," http://www.matrix-vision.com.
- [11] "Project's website," www.gris.uni-tuebingen.de/∼sfleck/matrixtracking.
Claims (26)
- Kamera zum Verfolgen von Objekten, mit einer Bildsensoreinheit (12) zum Erzeugen von Bilddaten und einer Verarbeitungseinheit (14) zum Verarbeiten der von der Bildsensoreinheit (12) an die Verarbeitungseinheit (14) übergebenen Bilddaten, wobei die Verarbeitungseinheit (14) eine Region of interest (ROI)-Auswahleinheit (20) zum Auswählen von für die Objektverfolgung interessanten Bildbereichen und eine Tracking-Einheit (21) aufweist, um Trackingdaten von zu verfolgenden Objekten anhand der Bilddaten zu ermitteln und dass an einem Signalausgang der Kamera (10) die Trackingdaten ausgebbar sind, wobei die Trackingdaten gegenüber der von der Bildsensoreinheit (12) erzeugten Menge an Bilddaten eine wesentlich verringerte Datenmenge aufweisen, insbesondere etwa um den Faktor 1000 verringert.
- Kamera nach Anspruch 1, dadurch gekennzeichnet, dass die Trackingdaten in Form einer insbesondere approximierten Wahrscheinlichkeitsdichtefunktion bereitgestellt sind.
- Kamera nach Anspruch 2, dadurch gekennzeichnet, dass die Wahrscheinlichkeitsdichtefunktion durch mehrere Stützstellen approximiert ist.
- Kamera nach Anspruch 3, dadurch gekennzeichnet, dass in der Verarbeitungseinheit (14) Parallelverarbeitungsmittel zum parallelen Verarbeiten der Stützstellen der Wahrscheinlichkeitsdichtefunktion und hiervon abhängender Daten vorgesehen sind.
- Kamera nach Anspruch 2, 3 oder 4, dadurch gekennzeichnet, dass die Tracking-Einheit (21) ein sogenanntes Particle-Filter implementiert, bei dem eine Wahrscheinlichkeitsdichtefunktion anhand eines Approximationsschrittes, eines Vorhersageschrittes und eines Messungsschrittes und angenähert wird.
- Kamera nach Anspruch 5, dadurch gekennzeichnet, dass im Vorhersageschritt für jede Stützstelle (i) ein neuer Zustandsvektor (Xt i) eines zu verfolgenden Objekts anhand alter Messungen (Zt-1) und eines alten Zustandsvektors sowie unter Berücksichtigung eines hinterlegten Bewegungsmodells ermittelt wird, im Messungsschritt der neue Zustandsvektor (Xt i) unter Berücksichtigung einer neuen Messung (Zt i) gewichtet wird und im Approximationssschritt; die aus allen neuen Zustandsvektoren (Xt i) resultierende Approximation der Wahrscheinlichkeitsdichtefunktion (p(Xt|Zt)) durch Stützstellen approximiert wird.
- Kamera nach wenigstens einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass die Tracking-Einheit (21) Trackingdaten von zu verfolgenden Objekten, insbesondere ein Vorhersagevergleichsobjekt, an die ROI-Auswahleinheit (20) übergibt, um in Abhängigkeit der Trackingdaten die für die Verarbeitung interessanten Bildbereiche auszuwählen.
- Kamera nach Anspruch 7, dadurch gekennzeichnet, dass das Vorhersagevergleichsobjekt mittels eines parametrischen Modells erzeugt wird, dass adaptiv anpassbar ist.
- Kamera nach wenigstens einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass in der Verarbeitungseinheit (14) die Bilddaten des von der ROI-Auswahleinheit (20) ausgewählten Bildbereichs in ein Farbhistogramm umgesetzt werden und die Tracking-Einheit (21) die Trackingdaten auf Basis des Farbhistogramms ermittelt.
- Kamera nach wenigstens einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass die ROI-Auswahleinheit (20) die Bildsensoreinheit (12) in Abhängigkeit der Trackingdaten so ansteuert, dass von der Bildsensoreinheit (12) nur noch diejenigen Bilddaten zur Verarbeitungseinheit (14) übertragen werden, die den von der ROI-Auswahleinheit (20) ausgewählten interessanten Bildbereichen entsprechen.
- Kamera nach wenigstens einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass die Bildsensoreinheit (12) und die Verarbeitungseinheit (14) in einem gemeinsamen Gehäuse integriert sind.
- Kamera nach wenigstens einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass die Verarbeitungseinheit (14) eine Netzwerkeinheit (32) aufweist.
- Kamera nach wenigstens einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass eine Steuereinheit (36) und Einstellmittel vorgesehen sind, um in Abhängigkeit der Trackingdaten Einstellparameter der Kamera (10), insbesondere Ausrichtung, Bildausschnitt und Vergrößerung, zu verändern.
- Verfahren zum Verarbeiten von Bilddaten in einer Kamera (10) zum Verfolgen von Objekten, gekennzeichnet durch folgende Schritte:- Übertragen von Bilddaten von einer Bildsensoreinheit (12) zu einer Verarbeitungseinheit (14) der Kamera (10),- Erzeugen von Trackingdaten zu verfolgender Objekte in einer Tracking-Einheit (21) der Verarbeitungseinheit (14) unter Verwendung probabilistischer Verfahren und- Auswählen von Bereichen der Bilddaten in Abhängigkeit der Trackingdaten in einer Roi-Auswahleinheit (20) der Verarbeitungseinheit (14), so dass nur Bilddaten ausgewählt werden, bei denen eine erhöhte Wahrscheinlichkeit dafür besteht, dass sie Informationen über zu verfolgende Objekte enthalten und- Ausgeben der Trackingdaten an einem Signalausgang der Kamera (10), wobei die Trackingdaten gegenüber der von der Bildsensoreinheit (12) erzeugten Menge an Bilddaten eine wesentlich verringerte Datenmenge aufweisen.
- Verfahren nach Anspruch 14, dadurch gekennzeichnet, dass der Schritt des Auswählens von Bereichen der Bilddaten das Ansteuern der Bildsensoreinheit (12) enthält, so dass nur noch Bilddaten von der Bildsensoreinheit (12) zur Verarbeitungseinheit (14) übertragen werden, bei denen eine erhöhte Wahrscheinlichkeit dafür besteht, dass sie Informationen über zu verfolgende Objekte enthalten.
- Verfahren nach Anspruch 14 oder 15, dadurch gekennzeichnet, dass der Schritt des Erzeugens von Trackingdaten das Approximieren einer Wahrscheinlichkeitsdichtefunktion mittels mehrerer Stützstellen enthält.
- Verfahren nach wenigstens einem der Ansprüche 14 bis 16, dadurch gekennzeichnet, dass der Schritt des Erzeugens von Trackingdaten das Erzeugen von Bilddaten eines Vergleichsobjekts anhand einer Wahrscheinlichkeitsdichtefunktion der zu verfolgenden Objekte und wenigstens eines parametrischen Modells der zu verfolgenden Objekte enthält.
- Verfahren nach Anspruch 17, dadurch gekennzeichnet, dass der Schritt des Erzeugens von Trackingdaten eine Ähnlichkeitsmessung zwischen den Bilddaten des Vergleichsobjekts und den von der Bildsensoreinheit (12) übertragenen Bilddaten enthält.
- Verfahren nach Anspruch 17 oder 18, dadurch gekennzeichnet, dass beim Schritt des Auswählens von Bereichen der Bilddaten nur diejenigen Bilddaten von der Bildsensoreinheit (12) ausgewählt werden, die im wesentlichen dem Bildausschnitt des Vergleichsobjekts entsprechen.
- Verfahren nach wenigstens einem der Ansprüche 14 bis 19, dadurch gekennzeichnet, dass der Schritt des Erzeugens von Trackingdaten das Erzeugen eines Farbhistogramms auf Basis der Bilddaten und dessen Auswertung enthält.
- Verfahren nach wenigstens einem der vorstehenden Ansprüche 14 bis 20, gekennzeichnet durch Darstellen der Trackingdaten, insbesondere einer Wahrscheinlichkeitsdichtefunktion eines verfolgten Objekts, in einem dreidimensionalen Umgebungsmodell.
- Verfahren nach Anspruch 21, dadurch gekennzeichnet, dass das dreidimensionale Umgebungsmodell in Weltkoordinaten, insbesondere georeferenziert, aufgebaut ist.
- Multikamerasystem mit wenigstens zwei Kameras nach wenigstens einem der vorstehenden Ansprüche 1 bis 13, dadurch gekennzeichnet, dass jede Kamera (10a, 10b, 10c) eine Netzwerkeinheit (32) aufweist und die wenigstens zwei Kameras (10a, 10b, 10c) über ein Netzwerk (18), insbesondere Ethernet oder WLAN, miteinander in Verbindung stehen.
- Multikamerasystem nach Anspruch 23, dadurch gekennzeichnet, dass die Verarbeitungseinheit (14) wenigstens einer der Kameras (10a, 10b, 10c) zum Verarbeiten von Trackingdaten einer anderen Kamera (10a, 10b, 10c) ausgelegt ist.
- Multikamerasystem nach Anspruch 23 oder 24, dadurch gekennzeichnet, dass im Netzwerk eine zentrale Verarbeitungseinheit zum Auswerten der von den wenigstens zwei Kameras (10a, 10b, 10c) übertragenen Trackingdaten vorgesehen ist.
- Multikamerasystem nach Anspruch 25, dadurch gekennzeichnet, dass im Netzwerk, insbesondere in der zentralen Verarbeitungseinheit, eine Visualisierungseinheit zum Darstellen der Trackingdaten in einem dreidimensionalen Umgebungsmodell vorgesehen ist.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102005009626A DE102005009626A1 (de) | 2005-02-24 | 2005-02-24 | Kamera zum Verfolgen von Objekten |
PCT/EP2006/001727 WO2006089776A1 (de) | 2005-02-24 | 2006-02-24 | Kamera zum verfolgen von objekten |
Publications (2)
Publication Number | Publication Date |
---|---|
EP1854083A1 EP1854083A1 (de) | 2007-11-14 |
EP1854083B1 true EP1854083B1 (de) | 2011-01-26 |
Family
ID=36589246
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP06707263A Not-in-force EP1854083B1 (de) | 2005-02-24 | 2006-02-24 | Kamera zum verfolgen von objekten |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP1854083B1 (de) |
AT (1) | ATE497230T1 (de) |
DE (2) | DE102005009626A1 (de) |
WO (1) | WO2006089776A1 (de) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020243436A1 (en) * | 2019-05-30 | 2020-12-03 | Infinity Collar Llc | A system for providing a dynamic portable virtual boundary |
US11610080B2 (en) | 2020-04-21 | 2023-03-21 | Toyota Research Institute, Inc. | Object detection improvement based on autonomously selected training samples |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102006060612B4 (de) * | 2006-12-21 | 2008-08-28 | Eads Deutschland Gmbh | Verfahren zur Überwachung von Zielobjekten und Multispektralkamera dazu |
DE102007033391A1 (de) * | 2007-07-18 | 2009-01-22 | Robert Bosch Gmbh | Informationsvorrichtung, Verfahren zur Information und/oder Navigation von einer Person sowie Computerprogramm |
US8428310B2 (en) * | 2008-02-28 | 2013-04-23 | Adt Services Gmbh | Pattern classification system and method for collective learning |
DE102008038527A1 (de) | 2008-08-20 | 2010-02-25 | Eads Deutschland Gmbh | Verfahren zur Auswertung von Bildern mit einer Multispektralkamera oder einem SAR-Radar sowie Verfahren zur Fusionierung von Bildern einer Stereo-Multispektralkamera und eines SAR Gerätes |
DE102009009533B4 (de) * | 2009-02-18 | 2016-09-15 | Leuze Electronic Gmbh & Co. Kg | Bildverarbeitender Sensor |
DE102010032496A1 (de) * | 2010-07-28 | 2012-02-02 | Ids Imaging Development Systems Gmbh | Überwachungskamera mit einem Positionssensor |
DE102010046220A1 (de) | 2010-09-21 | 2012-03-22 | Hella Kgaa Hueck & Co. | Verfahren zum Konfigurieren eines Überwachungssystems und konfigurierbares Überwachungssystem |
DE102011010334B4 (de) | 2011-02-04 | 2014-08-28 | Eads Deutschland Gmbh | Kamerasystem und Verfahren zur Beobachtung von Objekten in großer Entfernung, insbesondere zur Überwachung von Zielobjekten bei Nacht, Dunst, Staub oder Regen |
DE102011106810B4 (de) * | 2011-07-07 | 2016-08-11 | Testo Ag | Wärmebildkamera und Verfahren zur Bildanalyse und/oder Bildbearbeitung eines IR-Bildes mit einer Wärmebildkamera |
DE102011082052B4 (de) * | 2011-09-02 | 2015-05-28 | Deere & Company | Anordnung und Verfahren zur selbsttätigen Überladung von Erntegut von einer Erntemaschine auf ein Transportfahrzeug |
DE102012002321B4 (de) | 2012-02-06 | 2022-04-28 | Airbus Defence and Space GmbH | Verfahren zur Erkennung eines vorgegebenen Musters in einem Bilddatensatz |
EP3136367B1 (de) | 2015-08-31 | 2022-12-07 | Continental Autonomous Mobility Germany GmbH | Fahrzeugkameravorrichtung sowie verfahren zur erfassung eines vorausliegenden umgebungsbereichs eines kraftfahrzeugs |
DE102016224573A1 (de) | 2016-12-09 | 2018-06-14 | Conti Temic Microelectronic Gmbh | Radarsystem mit dynamischer Objekterfassung in einem Fahrzeug. |
CN107135377A (zh) * | 2017-05-27 | 2017-09-05 | 深圳市景阳科技股份有限公司 | 监控自动跟踪方法及装置 |
US11022972B2 (en) * | 2019-07-31 | 2021-06-01 | Bell Textron Inc. | Navigation system with camera assist |
CN112788227B (zh) * | 2019-11-07 | 2022-06-14 | 富泰华工业(深圳)有限公司 | 目标追踪拍摄方法、装置、计算机装置及存储介质 |
DE102019135211A1 (de) * | 2019-12-19 | 2021-06-24 | Sensific GmbH | Verfahren und Vorrichtung zur Nachverfolgung von Objekten |
DE102020109763A1 (de) | 2020-04-08 | 2021-10-14 | Valeo Schalter Und Sensoren Gmbh | Computerbasiertes System und Verfahren zur Objektverfolgung |
US11620966B2 (en) * | 2020-08-26 | 2023-04-04 | Htc Corporation | Multimedia system, driving method thereof, and non-transitory computer-readable storage medium |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0878965A3 (de) * | 1997-05-14 | 2000-01-12 | Hitachi Denshi Kabushiki Kaisha | Verfahrn zur Verfolgung eines eintretenden Objektes und Gerät zu dessen Verfolgung und Überwachung |
US6091771A (en) * | 1997-08-01 | 2000-07-18 | Wells Fargo Alarm Services, Inc. | Workstation for video security system |
-
2005
- 2005-02-24 DE DE102005009626A patent/DE102005009626A1/de not_active Withdrawn
-
2006
- 2006-02-24 AT AT06707263T patent/ATE497230T1/de active
- 2006-02-24 DE DE502006008806T patent/DE502006008806D1/de active Active
- 2006-02-24 WO PCT/EP2006/001727 patent/WO2006089776A1/de active Application Filing
- 2006-02-24 EP EP06707263A patent/EP1854083B1/de not_active Not-in-force
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020243436A1 (en) * | 2019-05-30 | 2020-12-03 | Infinity Collar Llc | A system for providing a dynamic portable virtual boundary |
US11610080B2 (en) | 2020-04-21 | 2023-03-21 | Toyota Research Institute, Inc. | Object detection improvement based on autonomously selected training samples |
Also Published As
Publication number | Publication date |
---|---|
DE102005009626A1 (de) | 2006-08-31 |
EP1854083A1 (de) | 2007-11-14 |
WO2006089776A1 (de) | 2006-08-31 |
DE502006008806D1 (de) | 2011-03-10 |
ATE497230T1 (de) | 2011-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1854083B1 (de) | Kamera zum verfolgen von objekten | |
US20220343138A1 (en) | Analysis of objects of interest in sensor data using deep neural networks | |
Liu et al. | Intelligent video systems and analytics: A survey | |
DE102014105351B4 (de) | Detektion von menschen aus mehreren ansichten unter verwendung einer teilumfassenden suche | |
US8599266B2 (en) | Digital processing of video images | |
EP1589484B1 (de) | Verfahren zur Erkennung und/oder Verfolgung von Objekten | |
EP1897032A1 (de) | Verfahren und bildauswertungseinheit zur szenenanalyse | |
CN104378582A (zh) | 一种基于ptz摄像机巡航的智能视频分析***及方法 | |
CN101883261A (zh) | 大范围监控场景下异常目标检测及接力跟踪的方法及*** | |
DE102013216041A1 (de) | Videobasierte Fahrzeuggeschwindigkeitsschätzung anhand von Bewegungsvektoren in Videostreams | |
DE102005008131A1 (de) | Objektdetektion auf Bildpunktebene in digitalen Bildsequenzen | |
DE112020001255T5 (de) | Tiefes neurales netzwerk mit niedrigem leistungsverbrauch zur gleichzeitigen objekterkennung und semantischen segmentation in bildern auf einem mobilen rechengerät | |
WO2019043406A1 (en) | DETECTION OF ANOMALY FROM VIDEO DATA FROM SURVEILLANCE CAMERAS | |
DE112022001546T5 (de) | Systeme und Verfahren zur Erzeugung von Objekterkennungs-Labels unter Verwendung fovealer Bildvergrößerung für autonomes Fahren | |
DE102006039104A1 (de) | Verfahren zur Entfernungsmessung von Objekten auf von Bilddaten eines Monokamerasystems | |
Kornprobst et al. | Tracking segmented objects using tensor voting | |
DE10049366A1 (de) | Verfahren zum Überwachen eines Sicherheitsbereichs und entsprechendes System | |
WO2023186350A1 (de) | Unbemanntes fluggerät zur optischen gebietserfassung | |
DE102022131567A1 (de) | Verfahren und System zur Ermittlung eines Grundrisses | |
US11830126B2 (en) | Accurate representation of camera field of view in two-dimensional mapping applications | |
DE112021004501T5 (de) | Modellierung der fahrzeugumgebung mit einer kamera | |
DE112021005375T5 (de) | Kreuzspektrale objektassoziation und tiefenschätzung in echtzeit | |
Chebi et al. | Strategy of detecting abnormal behaviors by fuzzy logic | |
DE102015207055A1 (de) | Verfahren und System zur Handhabung einer Teilverdeckung bei der Fahrzeugverfolgung mittels eines Modells für verformbare Teile | |
Englebienne et al. | Tracking in sparse multi-camera setups using stereo vision |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20070918 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC NL PL PT RO SE SI SK TR |
|
17Q | First examination report despatched |
Effective date: 20071219 |
|
DAX | Request for extension of the european patent (deleted) | ||
GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC NL PL PT RO SE SI SK TR |
|
REG | Reference to a national code |
Ref country code: GB Ref legal event code: FG4D Free format text: NOT ENGLISH |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: EP |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: FG4D Free format text: LANGUAGE OF EP DOCUMENT: GERMAN |
|
REF | Corresponds to: |
Ref document number: 502006008806 Country of ref document: DE Date of ref document: 20110310 Kind code of ref document: P |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R096 Ref document number: 502006008806 Country of ref document: DE Effective date: 20110310 |
|
REG | Reference to a national code |
Ref country code: NL Ref legal event code: VDEP Effective date: 20110126 |
|
LTIE | Lt: invalidation of european patent or patent extension |
Effective date: 20110126 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: ES Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110507 Ref country code: LV Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110126 Ref country code: LT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110126 Ref country code: PT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110526 Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110526 Ref country code: SE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110126 Ref country code: GR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110427 |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: FD4D |
|
BERE | Be: lapsed |
Owner name: UNIVERSITAT TUBINGEN Effective date: 20110228 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CY Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110126 Ref country code: SI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110126 Ref country code: PL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110126 Ref country code: NL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110126 Ref country code: FI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110126 Ref country code: BG Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110426 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MC Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20110228 |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: PL |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LI Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20110228 Ref country code: CH Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20110228 Ref country code: IE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110126 Ref country code: DK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110126 Ref country code: EE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110126 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: BE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20110228 Ref country code: SK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110126 Ref country code: CZ Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110126 Ref country code: RO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110126 |
|
PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
GBPC | Gb: european patent ceased through non-payment of renewal fee |
Effective date: 20110426 |
|
26N | No opposition filed |
Effective date: 20111027 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R097 Ref document number: 502006008806 Country of ref document: DE Effective date: 20111027 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: GB Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20110426 |
|
REG | Reference to a national code |
Ref country code: FR Ref legal event code: ST Effective date: 20120210 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: FR Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20110328 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110126 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R082 Ref document number: 502006008806 Country of ref document: DE |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R081 Ref document number: 502006008806 Country of ref document: DE Owner name: FLECK, SVEN, DR., DE Free format text: FORMER OWNER: UNIVERSITAET TUEBINGEN, 72074 TUEBINGEN, DE Effective date: 20120725 Ref country code: DE Ref legal event code: R081 Ref document number: 502006008806 Country of ref document: DE Owner name: FLECK, SVEN, DE Free format text: FORMER OWNER: UNIVERSITAET TUEBINGEN, 72074 TUEBINGEN, DE Effective date: 20120725 |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: MM01 Ref document number: 497230 Country of ref document: AT Kind code of ref document: T Effective date: 20110224 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: AT Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20110224 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LU Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20110224 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: TR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110126 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: HU Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20110126 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: DE Payment date: 20140709 Year of fee payment: 9 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R119 Ref document number: 502006008806 Country of ref document: DE |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: DE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20151007 |