Abstract:
A method for tracking and characterizing a plurality of vehicles simultaneously in a traffic control environment, comprising: providing a 3D optical emitter; providing a 3D optical receiver with a wide and deep field of view; driving the 3D optical emitter into emitting short light pulses; receiving a reflection/backscatter of the emitted light, thereby acquiring an individual digital full-waveform LIDAR trace for each detection channel of the 3D optical receiver; using the individual digital full-waveform LIDAR trace and the emitted light waveform, detecting a presence of a plurality of vehicles, a position of at least part of each vehicle and a time at which the position is detected; assigning a unique identifier to each vehicle; repeating the steps of driving, receiving, acquiring and detecting, at a predetermined frequency; tracking and recording an updated position of each vehicle and an updated time at which the updated position is detected.

Description:
TECHNICAL FIELD 
     The present invention relates to a system and method for traffic detection and more particularly to an optical system that detects the presence, location, lane position, direction and speed of vehicles in a traffic zone using an active three-dimensional sensor based on the time-of-flight ranging principle and an image sensor. 
     BACKGROUND OF THE ART 
     Growth in transportation demand has a major impact on traffic congestion and safety. To enhance the on-road safety and efficiency, major investments in transport infrastructures, including capital, operation and maintenance, are made all over the world. Intelligent systems collecting and disseminating real time traffic information is a key element for the optimization of traffic management. 
     Traffic monitoring can consist in different activities such as detecting the presence of a vehicle in a specific zone, counting the number of vehicles (volume), determining the lane position, classifying each vehicle, determining the direction of travel, estimating the occupancy and determining the speed. 
     Other traffic surveillance applications such as electronic toll collection and traffic enforcement require the same kind of information with a very high level of reliability. 
     In the United States, the FHWA has defined a vehicle classification based on 13 categories of vehicles from motorcycles, passenger cars, buses, two-axle-six-tire-single unit trucks, and up to a seven or more axle multi-trailer trucks classes. Several alternative classification schemes are possible. Often, the aggregation of the FHWA 13 classes is split into 3 or 4 classes. Other countries have their own way to define a classification for vehicles. 
     In the case of speed infringement, determining the position and the lane, measuring accurately the speed of a specific vehicle in a multi-lane high-density highway, and associating this information without any ambiguity with the vehicle identified using an Automatic License Plate Recognition (ALPR) system is quite challenging. 
     A red light enforcement system has comparable requirements. There is a need for an automatic red light enforcement system but the high reliability required for this application is also challenging. It implies the detection of vehicles at specific locations, the tracking of each of these vehicles in dense traffic at the intersection, the identification of each of these vehicles with the ALPR system, the confirmation of a red light violation by a specific vehicle and the collection of all information to support the issuance of a traffic violation ticket to the registered owner of the vehicle without any ambiguity. 
     Different kinds of detectors are used to collect data for these applications. Intrusive detectors such as inductive loop detectors are still common for detecting the presence of vehicles but have some disadvantages such as lengthy disruption to the traffic flow during installation and maintenance, inflexibility and inability to track a vehicle. Cameras with video processing have some drawbacks notably for speed measurement. 
     Radar technology is known to perform well for speed measurement but has some limitations in terms of lateral resolution making difficult the association between a speed measurement and the identification of a specific vehicle in dense traffic, for example, at an intersection. Radar technology presents difficulties in the correlation of a specific speed measurement to a specific vehicle when two or more vehicles traveling at different speeds simultaneously enter into the measurement beam. This limitation has an impact for speed enforcement applications. In some countries, legislation requires that ambiguous situations simply be discarded to reduce errors in the process. Installation of radar technology for speed enforcement is demanding because it requires adjusting the angle of the axis of the main lobe of emission in both the horizontal and vertical directions with respect to the axis of the road, with accuracy typically less than one-half degree angle to limit the cosine effect. 
     Thus, there is a need for a method and system for reliable multipurpose traffic detection for traffic management and enforcement applications. 
     SUMMARY 
     According to one broad aspect of the present invention, there is provided a method for tracking and characterizing a plurality of vehicles simultaneously in a traffic control environment. The method comprises providing a 3D optical emitter at an installation height oriented to allow illumination of a 3D detection zone in the environment; providing a 3D optical receiver oriented to have a wide and deep field of view within the 3D detection zone, the 3D optical receiver having a plurality of detection channels in the field of view; driving the 3D optical emitter into emitting short light pulses toward the detection zone, the light pulses having an emitted light waveform; receiving a reflection/backscatter of the emitted light on the vehicles in the 3D detection zone at the 3D optical receiver, thereby acquiring an individual digital full-waveform LIDAR trace for each detection channel of the 3D optical receiver; using the individual digital full-waveform LIDAR trace and the emitted light waveform, detecting a presence of a plurality of vehicles in the 3D detection zone, a position of at least part of each the vehicle in the 3D detection zone and a time at which the position is detected; assigning a unique identifier to each vehicle of the plurality of vehicles detected; repeating the steps of driving, receiving, acquiring and detecting, at a predetermined frequency; at each instance of the repeating step, tracking and recording an updated position of each vehicle of the plurality of vehicles detected and an updated time at which the updated position is detected, with the unique identifier. 
     In one embodiment, the traffic control environment is at least one of a traffic management environment and a traffic enforcement environment. 
     In one embodiment, detecting the presence includes extracting observations in the individual digital full-waveform LIDAR trace; using the location for the observations to remove observations coming from a surrounding environment; extracting lines using an estimate line and a covariance matrix using polar coordinates; removing observations located on lines parallel to the x axis. 
     In one embodiment, detecting the presence includes extracting observations in the individual digital full-waveform LIDAR trace and intensity data for the observations; finding at least one blob in the observations; computing an observation weight depending on the intensity of the observations in the blob; computing a blob gravity center based on the weight and a position of the observations in the blob. 
     In one embodiment, the method further comprises setting at least one trigger line location and recording trigger line trespassing data with the unique identifier. 
     In one embodiment, the method further comprises setting the trigger line location relative to a visible landmark in the environment. 
     In one embodiment, detecting the time at which the position is detected includes assigning a timestamp for the detecting the presence and wherein the timestamp is adapted to be synchronized with an external controller. 
     In one embodiment, the method further comprises obtaining a classification for each detected vehicles using a plurality of detections in the 3D detection zone caused by the same vehicle. 
     In one embodiment, detecting the presence further comprises detecting a presence of a pedestrian in the environment. 
     In one embodiment, the part of the vehicle is one of a front, a side and a rear of the vehicle. 
     In one embodiment, emitting short light pulses includes emitting short light pulses of a duration of less than 50 ns. 
     In one embodiment, the 3D optical emitter is at least one of an infrared LED source, a visible-light LED source and a laser. 
     In one embodiment, providing the 3D optical receiver to have a wide and deep field of view includes providing the 3D optical receiver to have a horizontal field of view angle of at least 20° and a vertical field of view angle of at least 4°. 
     In one embodiment, the method further comprises determining and recording a speed for each the vehicle using the position and the updated position of one of the instances of the repeating step and an elapsed time between the time of the position and the updated time of the updated position, with the unique identifier. 
     In one embodiment, the method further comprises using a Kalman filter to determine an accuracy for the speed to validate the speed; comparing the accuracy to a predetermined accuracy threshold; if the accuracy is lower than the predetermined accuracy threshold, rejecting the speed. 
     In one embodiment, the method further comprises retrieving a speed limit and identifying a speed limit infraction by comparing the speed recorded for each the vehicle to the speed limit. 
     In one embodiment, the method further comprises providing a 2D optical receiver, wherein the 2D optical receiver being an image sensor adapted to provide images of the 2D detection zone; driving the 2D optical receiver to capture a 2D image; using image registration to correlate corresponding locations between the 2D image and the detection channels; extracting vehicle identification data from the 2D image at a location corresponding to the location for the detected vehicle; assigning the vehicle identification data to the unique identifier. 
     In one embodiment, the vehicle identification data is at least one of a picture of the vehicle and a license plate alphanumerical code present on the vehicle. 
     In one embodiment, the vehicle identification data includes the 2D image showing a traffic violation. 
     In one embodiment, the method further comprises extracting at least one of a size of characters on the license plate and a size of the license plate and comparing one of the size among different instances of the repeating to determine an approximate speed value. 
     In one embodiment, the method further comprises providing a 2D illumination source oriented to allow illumination of a 2D detection zone in the 3D detection zone and driving the 2D illumination source to emit pulses to illuminate the 2D detection zone and synchronizing the driving the 2D optical receiver to capture images with the driving the 2D illumination source to emit pulses to allow capture of the images during the illumination. 
     In one embodiment, driving the 2D illumination source includes driving the 2D illumination source to emit pulses of a duration between 10 μs and 10 ms. 
     In one embodiment, the 2D illumination source is at least one of a visible light LED source, an infrared LED light source and laser. 
     In one embodiment, the 3D optical emitter and the 2D illumination source are provided by a common infrared LED light source. 
     In one embodiment, the vehicle identification data is at least two areas of high retroreflectivity apparent on the images, the detecting a presence includes extracting observations in the individual digital signals and intensity data for the observations, the method further comprising correlating locations for the areas of high retroreflectivity and high intensity data locations in the observations, wherein each the area of high retroreflectivity is created from one of a retroreflective license plate, a retro-reflector affixed on a vehicle and a retro-reflective lighting module provided on a vehicle. 
     In one embodiment, the method further comprises combining multiples ones of the captured images into a combined image with the vehicle and the vehicle identification data apparent. 
     According to another broad aspect of the present invention, there is provided a system for tracking and characterizing a plurality of vehicles simultaneously in a traffic control environment, the system comprising: a 3D optical emitter provided at an installation height and oriented to allow illumination of a 3D detection zone in the environment; a 3D optical receiver provided and oriented to have a wide and deep field of view within the 3D detection zone, the 3D optical receiver having a plurality of detection channels in the field of view; a controller for driving the 3D optical emitter into emitting short light pulses toward the detection zone, the light pulses having an emitted light waveform; the 3D optical receiver receiving a reflection/backscatter of the emitted light on the vehicles in the 3D detection zone, thereby acquiring an individual digital full-waveform LIDAR trace for each channel of the 3D optical receiver; a processor for detecting a presence of a plurality of vehicles in the 3D detection zone using the individual digital full-waveform LIDAR trace and the emitted light waveform, detecting a position of at least part of each the vehicle in the 3D detection zone, recording a time at which the position is detected, assigning a unique identifier to each vehicle of the plurality of vehicles detected and tracking and recording an updated position of each vehicle of the plurality of vehicles detected and an updated time at which the updated position is detected, with the unique identifier. 
     In one embodiment, the processor is further for determining and recording a speed for each the vehicle using the position and the updated position of one of the instances of the repeating step and an elapsed time between the time of the position and the updated time of the updated position, with the unique identifier. 
     In one embodiment, the system further comprises a 2D optical receiver, wherein the 2D optical receiver is an image sensor adapted to provide images of the 2D detection zone; and a driver for driving the 2D optical receiver to capture a 2D image; the processor being further adapted for using image registration to correlate corresponding locations between the 2D image and the detection channels and extracting vehicle identification data from the 2D image at a location corresponding to the location for the detected vehicle; and assigning the vehicle identification data to the unique identifier. 
     In one embodiment, the system further comprises a 2D illumination source provided and oriented to allow illumination of a 2D detection zone in the 3D detection zone; a source driver for driving the 2D illumination source to emit pulses; a synchronization module for synchronizing the source driver and the driver to allow capture of the images while the 2D detection zone is illuminated. 
     According to another broad aspect of the present invention, there is provided a method for tracking and characterizing a plurality of vehicles simultaneously in a traffic control environment, comprising: providing a 3D optical emitter; providing a 3D optical receiver with a wide and deep field of view; driving the 3D optical emitter into emitting short light pulses; receiving a reflection/backscatter of the emitted light, thereby acquiring an individual digital full-waveform LIDAR trace for each detection channel of the 3D optical receiver; using the individual digital full-waveform LIDAR trace and the emitted light waveform, detecting a presence of a plurality of vehicles, a position of at least part of each vehicle and a time at which the position is detected; assigning a unique identifier to each vehicle; repeating the steps of driving, receiving, acquiring and detecting, at a predetermined frequency; tracking and recording an updated position of each vehicle and an updated time at which the updated position is detected. 
     Throughout this specification, the term “object” is intended to include a moving object and a stationary object. For example, it can be a vehicle, an environmental particle, a person, a pedestrian, a passenger, an animal, a gas, a liquid, a particle such as dust, a pavement, a wall, a post, a sidewalk, a ground surface, a tree, etc. 
     Throughout this specification, the term “vehicle” is intended to include any movable means of transportation for cargo, humans and animals, not necessarily restricted to ground transportation, including wheeled and unwheeled vehicles, such as, for example, a truck, a bus, a boat, a subway car, a train wagon, an aerial tramway car, a ski lift, a plane, a car, a motorcycle, a tricycle, a bicycle, a Segway™, a carriage, a wheelbarrow, a stroller, etc. 
     Throughout this specification, the term “environmental particle” is intended to include any particle detectable in the air or on the ground and which can be caused by an environmental, chemical or natural phenomenon or by human intervention. It includes fog, water, rain, liquid, dust, dirt, vapor, snow, smoke, gas, smog, pollution, black ice, hail, etc. 
     Throughout this specification, the term “red light” is intended to mean a traffic light (traffic signal, traffic lamp or signal light) which is currently signaling users of a road, at a road intersection, that they do not have the right of way into the intersection and that they should stop before entering the intersection. Another color and/or symbol could be used to signal the same information to the user depending on the jurisdiction. 
     Throughout this specification, the term “green light” is intended to mean a traffic light (traffic signal, traffic lamp or signal light) which is currently signaling users of a road, at a road intersection, that they have the right of way into the intersection and that they should enter the intersection if it is safe to do so. Another color and/or symbol could be used to signal the same information to the user depending on the jurisdiction. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The accompanying drawings, which are included to provide a better understanding of the main aspects of the system and method and are incorporated in and constitute a part of this specification, illustrate different example embodiments. The accompanying drawings are not intended to be drawn to scale. In the drawings: 
         FIG. 1  is a functional bloc diagram of an example of the multipurpose traffic detection system showing its main components and the way they are interconnected; 
         FIG. 2  is an example installation of the traffic detection system on the side of a 3-lane highway; 
         FIG. 3  shows an example installation of the traffic detection system on a gantry; 
         FIG. 4  shows the impact on the depth of a detection zone of the height of installation of the system; 
         FIG. 5  shows an example casing for the multipurpose traffic detector; 
         FIG. 6  shows a top view of the detection zone on a 3-lane highway; 
         FIG. 7  shows a top view of the detection zone in a red light enforcement application; 
         FIGS. 8A and 8B  are photographs showing example snapshots taken by the image sensor with the overlay of the 3D sensor displaying a vehicle in the detected zone with distance measurements; 
         FIG. 9A  is a photograph showing an example snapshot taken by the image sensor with the overlay of the 3D sensor at an intersection for red light enforcement application and  FIG. 9B  is a graph of data acquired by the detection system showing the range of detection of vehicles on 3 lanes in Cartesian coordinates; 
         FIG. 10  is a top view of an example road side installation with the tracking system being installed next to a one-directional three-lane highway and for which the detection zone is apparent and covers, at least partly, each of the lanes, all vehicles traveling in the same direction; 
         FIG. 11  is a top view of the example installation of  FIG. 10  on which four vehicle detections are visible in some of the 16 separate channels with simultaneous acquisition capability; 
         FIG. 12  is a top view of the example installation of  FIG. 10  on which a detection is visible between two trigger lines; 
         FIG. 13  includes  FIGS. 13A ,  13 B,  13 C,  13 D,  13 E and  13 F, in which  FIGS. 13A ,  13 C and  13 E are photographs which show a few frames of vehicle tracking when vehicles arrive at an intersection with a red light and  FIGS. 13B ,  13 D, and  13 F show a graph of data acquired by the detection system for each corresponding frame; 
         FIG. 14  includes  FIGS. 14A ,  14 B,  14 C,  14 D,  14 E and  14 F, in which  FIGS. 14A ,  14 C and  14 E are photographs which show a few frames of vehicle tracking when vehicles depart the intersection of  FIG. 13  at the green light and  FIGS. 14B ,  14 D, and  14 F show a graph of data acquired by the detection system for each corresponding frame; 
         FIG. 15  is a flowchart illustrating an example method for tracking several vehicles based on a space-based tracking disjoint; 
         FIG. 16  is a flowchart illustrating an example method for tracking several vehicles for a red-light enforcement application, this algorithm uses a space-based tracking joint; 
         FIG. 17  is a flowchart illustrating the selection of appropriate measures among the detections; 
         FIG. 18  shows an example segment extraction line for a long vehicle; 
         FIG. 19  is a state diagram illustrating the tracking system used without a traffic light state; 
         FIG. 20  is a state diagram illustrating the tracking system used with a traffic light state; 
         FIG. 21  is a flowchart showing example steps performed to compute the vehicle position; 
         FIG. 22  is a flowchart showing example steps performed for object tracking without a traffic light state; 
         FIG. 23  is a flowchart showing example steps performed for object tracking with a traffic light state; 
         FIG. 24  is a flowchart illustrating an example classification process; 
         FIG. 25  includes  FIGS. 25A ,  25 B and  25 C which illustrate the relationship between the detections of a vehicle and its geometric features of width and length; 
         FIG. 26  illustrates the direct geometric relationship between height of the vehicle and distance of vehicle detection; 
         FIG. 27  includes  FIGS. 27A ,  27 B,  27 C and  27 D which show top view frames of a vehicle detected by the LEDDAR sensor; 
         FIG. 28  includes  FIGS. 28A ,  28 B,  28 C and  28 D which show corresponding side view frames of the vehicle of  FIG. 27 ; 
         FIG. 29  is a flowchart illustrating an example segmentation algorithm based on a 3D bounding box; 
         FIG. 30  is a top view of an example scenario used for the analysis of Posterior Cramer-Rao lower bound; 
         FIG. 31  is a graph showing theoretical performance of the tracking algorithm given by the PCRB; 
         FIG. 32  includes  FIGS. 32A ,  32 B,  32 C and  32 D in which  FIG. 32A  is a photograph showing an example snapshot taken by the image sensor during the day,  FIGS. 32B ,  32 C and  32 D are photographs showing a zoom in on license plates in the snapshot of  FIG. 32A ; 
         FIG. 33  includes  FIGS. 33A ,  33 B and  33 C in which  FIG. 33A  is a photograph showing an example snapshot taken by the image sensor at night without any light,  FIG. 33B  is a photograph showing the same scene as  FIG. 33A  taken by the image sensor at night with an infrared light illumination,  FIG. 33C  is a photograph showing a zoom in on a license plate extracted from the image of  FIG. 33B ; 
         FIG. 34  includes  FIGS. 34A ,  34 B,  34 C and  34 D in which  FIG. 34A  is a photograph showing another example snapshot taken by the image sensor at night with infrared light,  FIG. 34B  is a photograph showing a zoom in on a license plate extracted from the image of  FIG. 34A ,  FIG. 34C  is a photograph showing an example snapshot taken by the image sensor with a shorter integration time at night with infrared light,  FIG. 34D  is a photograph showing a zoom in on a license plate extracted from the image of  FIG. 34C ; and 
         FIG. 35  is a photograph showing an example panoramic snapshot taken by the image sensor using infrared illumination in which two vehicles are present in the detection zone and on which the overlay of the 3D sensor is shown with dashed lines. 
     
    
    
     DETAILED DESCRIPTION 
     Description of the Multipurpose Traffic Detection System 
     Reference will now be made in detail to example embodiments. The system and method may however, be embodied in many different forms and should not be construed as limited to the example embodiments set forth in the following description. 
     The functionalities of the various components integrated in an example multipurpose traffic detection system  10  can be better understood by referring to the functional block diagram shown in  FIG. 1 . The 3D Optical Emitter  12  (3DOE) emits short pulses of light, for example of a length less than 50 ns, within a predetermined zone. In the example embodiment, the 3DOE  12  is an IR LED illumination source determining a Field-of-Illumination FOI 3D  covering the 3D detection zone FOV 3D . The optical source of the 3DOE can also be based on Laser technology. The horizontal angles of the FOI 3D  and FOV 3D  are wide enough to cover at least one lane. For example, a system with a horizontal FOI/FOV of 35° would be able to cover 3 lanes, each lane having a width of 3.5 m, when installed at 15 m from the side of the detection zone. 
     An example mounting configuration of the multipurpose traffic detection system  10  can be seen in  FIG. 2 , which depicts a schematic view of a roadway with 3 lanes being shown. The traffic detection system  10  is shown mounted on a pole  27  with an orientation towards traffic direction. Pole  27  can be a new dedicated road infrastructure for the sensor installation or an already existing road infrastructure streetlight assembly or other types of infrastructures like gantries or buildings. This exemplary roadway comprises three adjacent traffic lanes for vehicles. The traffic detection system is intended to detect any type of objects that may be present within the predetermined 3D detection zone. 
     The mounting height of the traffic detection system  10  is, for example, between 1 to 10 m with a lateral distance from the nearest traffic lane of, for example, between 1 to 5 m. In  FIG. 2 , three vehicles travelling in the same direction on the traffic lanes enter in the 3D detection zone. When the vehicles reach the 3D detection zone, the multipurpose traffic detection system is used for detection, localization, classification and measurement of the speed of the vehicles through the zone. The system can also be installed over the roadway on a gantry as shown in  FIG. 3 . The system can also detect vehicles traveling in opposite directions. 
     The detection system can be installed at different heights, from the ground up to 10 m.  FIG. 4  shows the impact of the installation height on the longitudinal length of the detection zone. With a fixed starting distance of detection, the longitudinal length of the detection zone will be shorter with a system installed higher. The vertical angles of the FOI 3D  and FOV 3D  have to be wide enough to detect and track vehicles over several meters, for example over at least 8 m. For example, a system installed at a height of 3.5 m with a vertical FOI/FOV of 6° and a detection zone beginning at 15 m from the detector will have a detection zone depth of approximately 13 m. 
     Referring back to  FIG. 1 , part of the light diffusively reflected by the vehicles and objects in the FOI 3D  is directed towards the collecting aperture of the 3D Optical Receiver  14  (3DOR) for its 3D optical detection and subsequent conversion into digital waveforms. To be detected, an object should appear within the FOV 3D  of the 3DOR, which is defined by its optics as well as by the dimensions of its optically sensitive device. The 3DOR is composed of one or more optical lenses, multichannel optical detectors, for example photodiode arrays, an analog frontend and analog-to-digital converter. Usually, the channels are digitalized in parallel and the system implements a full-waveform signal processing of the signal waveforms generated by the plurality of optical detection channels. 
     The multipurpose traffic detection system provides a good accuracy in terms of lateral resolution and is less dependent on the angle of installation than Radar technology. 
     In  FIG. 1 , the 2D Optical Receiver  16  (2DOR) is at least one image sensor, for example a CMOS or CCD (including front end and AD conversion) which provides images of the portion of the roadway area that encompasses or overlaps at least a section of the FOI 3D  of the 3DOE and the FOV 3D  of the 3DOR. The 2DOR will be used during installation, to transmit video data, and, for some applications, to help identify vehicles using, for example, Automatic License Plate Recognition (ALPR) techniques. For applications requiring vehicle identification, the requirement for the image sensor in terms of resolution is high. An external image sensor or camera can also be used for this function. The average size of a character on a license plate is between 50 mm to 80 mm. It takes at least 16 pixels per character (height) to obtain good results with an Optical Character Recognition (OCR) processing within an ALPR system. Based on that criterion, the identification of a license plate of a vehicle circulating on a 3-lane highway (3.5 m×3 m) requires an image sensor with a least 5 Mpixels (2.5K×2K). High resolution image sensors are expensive. One way to reduce the cost is to use at least two image sensors each with lower resolution and to combine the information coming from both images using image stitching techniques. The synchronization, acquisition and image processing are performed by Control and processing unit  22 . 
     The 2D Illumination  18  (2DI) is an optical source emitting infrared and/or visible light. The 2DI can be embedded in the sensor enclosure or can be an external module. In one example embodiment, the optical source of 2DI  18  is at least one LED. LEDs are efficient and the FOI can be optimized with optical collimators and diffusers. The pulse width of 2DOE can be in the range of 10 μs to 10 ms and can be synchronized with the image capture (integration time) of the image sensor(s). For vehicles traveling at high speed, the integration time can be in the range of 500 μs and less. A vehicle moving at 150 km/h will travel 21 cm in 500 μs. 
     A single set of infrared LEDs can be used for both the 3DOE and 2DOE. Very high-short intensity pulses (for example &lt;50 ns) for 3D detection can be mixed with longer pulses (for example 10 μs to 10 ms) for 2D sensor(s). The LEDs can have a wavelength between 800 and 1000 μm, for example. 
     Source Driver Electronics (SDE)  20  uses dedicated electronics for driving the 3DOE  12  with current pulses having peak amplitude and duration suitable for effective implementation of the optical ranging principle on which the operation of the multipurpose traffic detection system is based. A pulsed voltage trig signal forwarded by the Control and Processing Unit  22  commands the generation of each current pulse by the drive electronics. The operating conditions and performance requirements for the multipurpose traffic detection system call for the emission of short optical pulses having a duration in the range of 5 to 50 ns, for example. Depending on the repetition rate at which the pulses are emitted, the duty cycle (relative ON time) of the optical emission can be as low as 0.1%. In order to get the desired peak optical output power for the radiated light pulses, any lowering of the peak drive level of the LEDs or Laser can be compensated by mounting additional LED or Laser sources in the 3DOE  12  and appropriately duplicating their drive electronics. 
     The SDE  20  can also drive 2D illumination with current pulses having peak amplitude and duration suitable for effective illumination of the scene for the 2DOR  16 . A pulsed voltage trig signal forwarded by the Control and Processing Unit  22  commands the generation of each current pulse by the drive electronics. The operating conditions and performance requirements for the multipurpose traffic detection system call for the emission of 2D optical pulses having a duration in the range of 10 μs to 10 ms, for example. 
     The SDE  20  can control and receive information from 3DOE and 2D illumination about the intensity of the current pulse, LEDs/Laser temperature, etc. 
     All of these modules exchange data and receive commands and signals from the control and processing unit  22 . The Control and processing unit  22  can include digital logic (for example by a Field-Programmable Gated Array (FPGA)) for pre-processing the 3D raw data and for the synchronization and control, a memory, and a processing unit. The processing unit can be a digital signal processing (DSP) unit, a microcontroller or an embarked personal computer (PC) board as will be readily understood. 
     The primary objective of the 3D full-waveform processing is to detect, within a prescribed minimum detection probability, the presence of vehicles in a lane that is mapped to a number of adjacent detection channels. Because of the usual optical reflection characteristics of the vehicle bodies and of various constraints that limit the performances of the modules implemented in a traffic detection system, the optical return signals captured by the 3DOR are optimized by acquisition shifting techniques, accumulation techniques and filtering and correlation technique to enhance the signal-to-noise ratio (SNR) of the useful signal echoes and detect a digital replica of the pulse emitted by the 3DPE. The properties (peak amplitude, shape, time/distance location) of the useful features present in the waveforms should remain ideally unchanged during the time period required to capture a complete set of waveforms that will be averaged. This condition may cause issues when attempting to detect vehicles that move rapidly, this situation leading to signal echoes that drift more or less appreciably from waveform to waveform. The detrimental impacts of this situation can be alleviated by designing the traffic detection system so that it radiates light pulses at a high repetition rate (e.g., in the tens to hundreds of kHz range). Such high repetition rates will enable the capture of a very large number of waveforms during a time interval sufficiently short to keep the optical echoes associated to a moving vehicle stationary. Detection information on each channel can then be upgraded, for example between a few tens to a few hundred times per second. For example, with a multipurpose traffic detection system using a frame rate at 200 Hz, a car at 250 km/h would have moved forward by 35 cm between each frame. 
     The Control and processing unit  22  has numerous functions in the operation of the multipurpose traffic detection system, one of these being the calibration of the system. This calibration process can be done by connecting a remote computer to the Control and processing unit  22  and communicating using a Power management and data Interface  24 . 
     During normal operation of the multipurpose traffic detection system, Power management and data Interface  24  receives information from the external controller (including parameters like a speed limit) and also allows the Control and processing unit  22  to send data. The data sent can be related to the detection of each vehicle and can comprise information such as an accurate timestamp of the detection time synchronized with the external controller, a unique identifier (ID number), the lane and position of the vehicle (lateral and longitudinal) for each trigger event, the position of the vehicle in an image, video streaming, identification by ALPR, speed, classification, weather information, etc., to the external controller. 
     In another embodiment, part of the process and algorithms can be integrated in the external controller which receives the raw data from the Control and processing unit by the Power Management and Interface. 
     Several types of interfaces can be used to communicate with the external controller: Ethernet, RS-485, wireless link, etc. Power over Ethernet (PoE) may be used for its simplicity of connection including power, data and distance (up to 100 m). 
     The data information can also be stored in memory and retrieved later. 
     Power management and data Interface  24  can also send electrical trigger signals to synchronize events like the detection of the front or the rear of a vehicle at a specific position to other devices like an external camera, an external illuminator or other interface and external controller. 
     The Power Supply Management and Data Interface  24  can also be useful in transmitting images and videos to an external system or network to allow a remote operator to monitor different traffic events (ex.: accident, congestion, etc.). Video compression (ex.: MPEG) can be done by a processor to limit the bandwidth required for the video transmission. 
     The four optical modules can be rigidly secured to the attachment surface of an actuator assembly (not shown). The modules can then pivot in a controlled manner about up to three orthogonal axes to allow a precise alignment of their common line of sight after the multipurpose traffic detection unit has been installed in place and aligned in a coarse manner. The fine-tuning of the orientation of the line of sight is, for example, performed remotely by an operator via a computer device connected to the multipurpose traffic detection system, for example through PoE or a wireless data link. 
       FIG. 1  also shows a functional bloc labeled Sensors  26  for measuring different parameters. The internal temperature in the system enclosure can be monitored with a temperature sensor which can be used to control a heating/cooling device, not shown. The current orientation of the system can be monitored using an inclinometer/compass assembly. Such information may be useful for timely detection of the line of sight that may become misaligned. The sensor suite may also include an accelerometer for monitoring in real-time the vibration level to which the system is submitted to as well as a global positioning system (GPS) unit for real-time tracking of the location of the system and/or for having access to a real-time clock. 
       FIG. 5  shows an example casing with a window  28  for the multipurpose traffic detection system. The casing can house a more or less complete suite of monitoring instruments, each of them forwarding its output data signals to the control and processing unit for further processing or relay. In other configurations of the casing, lateral sections can be integrated to protect the window from the road dust. 
     Use, Set-Up, Basic Principles, Features and Applications 
       FIG. 6  shows a top view of an installation of the multipurpose detection system. The multichannel 3DOR detects vehicles present within a two-dimensional detection zone, the active nature of the traffic detection system provides an optical ranging capability that enables measurement of the instantaneous distances of the detected vehicles from the system. This optical ranging capability is implemented via the emission of light in the form of very brief pulses along with the recordal of the time it takes to the pulses to travel from the system to the vehicle and then to return to the system. Those skilled in the art will readily recognize that the optical ranging is performed via the so-called time-of-flight (TOF) principle, of widespread use in optical rangefinder devices. However, most optical rangefinders rely on analog peak detection of the light pulse signal reflected from a remote object followed by its comparison with a predetermined amplitude threshold level. In the present system, the traffic detection system numerically processes the signal waveform acquired for a certain period of time after the emission of a light pulse. The traffic detection system can therefore be categorized as a full-waveform LIDAR (Light Detection and Ranging) instrument. The system analyses the detection and distance measurements on several 3D channels and is able to track several vehicles at the same time in the detection zone. The system can determine the lane position, the distance from the detector and the speed, for each individual vehicle. 
     As can be seen in  FIG. 6 , the detection system  10  is installed at a reference line  60 , has a wide FOV  61 , has a large and wide detection and tracking zone  62  covering several lanes and several meters of depth and detects several vehicles on several lanes in a roadway. 
     The detection system can be configured with two trigger positions. The first trigger  63  is set in the first section of the detection zone and the second trigger  64  is set a few meters away, in this case close to the end of the detection zone. In this example, a first vehicle  65  was detected when entering the detection zone on lane 1, was tracked, was detected at the position of the first trigger  63 , was continuously tracked and is now being detected at the position of the second trigger  64 . Information about its lane position, speed, etc., can be constantly sent or can be sent only when the vehicle reaches pre-established trigger positions. A second vehicle  66  was detected when entering the detection zone on lane 2, was tracked, was detected at the position of the first trigger  63 , and is continuously tracked until it reaches the position of the second trigger  64 . A third vehicle  67  was detected when entering the detection zone on lane 3, was tracked, is detected at the position of the first trigger  63 , will continue to be tracked and will reach the position of the second trigger  64 . 
     The detection system has the capability to identify, track and send information about multiple vehicles at the same time and its multiple receiver channels greatly reduce the cosine effect for speed measurement. 
     The system can capture several snapshots using the 2DOR at different levels of illumination using the 2DOE. Information about each vehicle (date/hour of an event, speed, position, photographs and identification based on Automatic License Plate Recognition) can be sent to the external controller. This is useful for applications like traffic management (for vehicle detection, volume, occupancy, speed measurement and classification), speed enforcement, red light enforcement, etc. The system can be permanently or temporarily installed. It can even be a mobile system, for example a system installed on a vehicle. 
     An example of configuration for Red Light Enforcement is shown in  FIG. 7 . The capability of the system to detect, track, determine the lane position, measure the speed and take photographs (or videos) for each vehicle several meters away from the stop bar has great value for this application. Red light enforcement applications require the detection of a vehicle entering an intersection when the traffic light is at the red state and the automatic capture of several images of the vehicle as it crosses the stop bar and runs the red light. The detection system needs to provide evidence that a violation occurred without ambiguity. 
     For most applications, detection rates should be high, for example of the order of 95% and more (without occlusion), and false detections should occur only very rarely. Images and information about the date and time of the infraction will allow the authorities to transmit a traffic infraction ticket. Identification of the driver and/or owner of the vehicle is generally made by the authorities using the information from the license plate of the vehicle. Since speed information is available, speed infractions can also be detected when the traffic light is green. As will be readily understood, the detection system can also be used for other detection applications such as stop line crossing and railway crossing. 
     In  FIG. 7 , the detection system is installed on the side of the road at an example distance of 15 to 25 m from the stop bar  70 . The detection and tracking zone  71  starts few meters before the stop bar  70  and covers several meters after the bar, allowing a large and deep zone for detecting and tracking any vehicle on several lanes (three lanes in that example), at different speeds (from 0 to more than 100 km/h), at a rate of up to ten vehicles detected per second. The detection system can take several images of a red light infraction including, for example, when the vehicle is located at a predetermined trigger distance, for example at first trigger  72  when the back of the vehicle is close to the stop bar  70  and at second trigger  73  when the back of the vehicle is few meters away from the stop bar  70 . Optional detection of the lane position is useful when a right turn on red is allowed at the intersection. 
     Speed enforcement is another application that requires providing evidence that a speed violation occurred. The correlation between the detected speed and the actual vehicle guilty of the infraction needs to be trustworthy. Sufficient information should be provided to allow identification of the vehicle owner, using information from the license plate, for example. The capability of the detection system to measure the speed of several vehicles at the same time with high accuracy and to make the association between each speed measurement and the specific identified vehicle is useful for traffic enforcement applications. This is made possible by, among others, the multiple FOV, the robustness and accuracy of the sensor and the capability to store several images of a violation. 
     The detector can store speed limit data (which can be different for each lane) and determine the occurrence of the infraction. 
     The detector can be mounted on a permanent installation or can also be temporary, provided on a movable tripod for example. Detectors can also be installed at the entry and at the exit of a point-to-point enforcement system allowing the measurement of the average speed of a vehicle by determining the amount of time it takes to displace the vehicle between the two points. The position of each vehicle and its classification are also information that the detector can transmit to the external controller. In some countries, lane restriction can be determined for specific vehicles, such as trucks for example. 
     Moreover, the multipurpose traffic detection system can fulfill more than one application at a time. For example, the system used for traffic management near an intersection can also be used for red light enforcement at that intersection. 
     Methods for Alignment and Detection of the Traffic Detection System 
     A method that allows a rapid and simple alignment step for the multipurpose traffic detection system after it has been set in place is provided. 
       FIGS. 8A  and B show examples images of a roadway captured by the 2DOR during the day. The image is overlaid with the perimeters of a set of 16 contiguous detection zones of the 3DOR. In  FIG. 8A , a vehicle present in the first lane  32  would be detected by several adjacent channels at a respective detected distance between 17.4 m to 17.6 m (see the numbers at the bottom of the overlay). In  FIG. 8B , the vehicle is detected in the second lane  34  between 24.0 m to 24.4 m. Note that the overall detection zone is wide enough to cover more than two lanes. In some situations depending on the context of the installation, some objects or even the ground can be detected by the system but can be filtered out and not be considered as an object of interest. 
       FIG. 9A  shows a photograph of a red light enforcement application installation. Some channels detect echo back signals from the ground (see the numbers at the bottom of the overlay) but the system is able to discriminate them as static objects.  FIG. 9B  is a graph showing a top view of the 3D  16  field of view of a road with 3 lanes. In a Cartesian coordinate system, if the detection system represents the origin, the horizontal direction from left to right is taken as the positive x-axis and represents the width of the 3 lanes in meters, and the vertical direction from bottom to top is taken as the positive y-axis and represents the longitudinal distance from the sensor. To facilitation installation, the installation software will indicate the beginning and the end of the detection zone by showing a detection line as seen in  FIG. 9B . 
     Multi-Vehicle Simultaneous Detection and Tracking for Position Determination, Speed Measurement and Classification 
       FIG. 10  shows a top view of an example road facility equipped with a multipurpose traffic detection system  10 . The system  10  mounted on an existing traffic infrastructure is used to illuminate a detection zone  42 . In this example, the mounting height is between 1 and 10 m with a distance from the road between 1 and 5 m. In  FIG. 10 , the vehicles  46  travel in lanes  43 ,  44  and  45  in a direction indicated by arrow A through the detection system illumination zone  42 . The detection system  10  is used for detecting information of the rear surface of vehicles  46  coming in the illumination zone  42 . The detection system  10  is based on IR LED illumination source with a multiple field-of-view detector. 
     In  FIG. 11 , the 16 fields of view  52  covering a section of the road are shown. In a Cartesian coordinate system, if the detection system represents the origin  49 , the horizontal direction from left to right is taken as the positive x-axis  50 , and the vertical direction from bottom to top is taken as the positive y-axis  51  then, each 3D detection  53  gives the distance between an object and the sensor. 
       FIG. 12  shows the system in an example configuration with two trigger lines  56  and  57  located at a distance from the sensor between 10 and 50 m, for example. The two trigger lines  56  and  57  are configured by the user. Blob  55  illustrates a detectable vehicle rear. When the blob reaches the trigger line, the system returns a trigger message. 
       FIG. 13  and  FIG. 14  show example data for vehicle tracking in the context of traffic light enforcement. Thanks to a projection of the field-of-view of the detection system on the real 2D image, the relationship between the top view ( FIGS. 13B ,  13 D,  13 F) and the scene ( FIGS. 13A ,  13 C,  13 E) is made apparent. The 3D detections are represented by dots in the top views. In this example, a small diamond in the top views shows the estimated position of the rear of each vehicle based on the 3D detections. In this example, the small diamond represents the middle of the rear of the vehicle. The distance of detection is indicated under each detection channel in the scene image. The amplitude of the detection is also indicated below the distance of detection. On the top view, thin lines define the limits of the tracking area and dotted lines define two trigger lines configured by the user. When entering this area, a new vehicle is labeled with a unique identifier. In each frame, its estimated position is shown using a small diamond. As shown, the interactions between vehicle detections are managed by the tracking algorithm allowing distinguishing vehicles located in the detection area. 
       FIG. 15  shows the steps performed during the execution of an example tracking algorithm. At step  80 , the tracking algorithm selects the reliable measurements located on the road. At step  81 A, the generic Kalman Filter for tracking a variable number of objects is used. At step  82 , a road user classification based on geometric features is computed. Finally, step  83  sends to each frame, a message with position, speed, class and trigger if necessary for the vehicles located in the detection zone. 
       FIG. 16  shows the steps performed during the execution of the tracking algorithm if the traffic light state  85  is known. Steps  80 / 800 ,  82  and  83  are unchanged. However, step  81 B is different because the additional information allows working in a space-based tracking joint. 
     The selection of relevant measures  80  is described in  FIG. 17 . At step  100  the tracking algorithm reads the available observations. At step  101 , the tracking algorithm removes each detection that is not located on the road. Step  101  is followed by step  102  where the tracking algorithm recognizes lines by a feature-based approach. Step  103  eliminates the points located on lines parallel to the x-axis  50  with the aim of extracting the characteristics relating to the side(s) of vehicles and to keep only the objects having a “vehicle rear signature”. 
     The estimation of a line based on the covariance matrix using polar coordinate  102  is illustrated in  FIG. 18 . This estimation is based on feature extraction. The strength of the feature-based approach lies in its abstraction from data type, origin and amount. In this application, line segments will be considered as a basic primitive which later serves to identify and then remove the side of vehicles. Feature extraction is divided into two sub-problems: (i) segmentation to determine which data points contribute to the line model, and (ii) fitting to give an answer as to how these points contribute. 
     The polar form is chosen to represent a line model:
 
 x  cos α+ y  sin α= r  
 
     where −π&lt;α≦π is the angle between the x axis and the normal of the line, r≧0 is the perpendicular distance of the line to the origin; (x, y) is the Cartesian coordinates of a point on the line. The covariance matrix of line parameters is: 
     
       
         
           
             
               cov 
               ⁡ 
               
                 ( 
                 
                   r 
                   , 
                   a 
                 
                 ) 
               
             
             = 
             
               [ 
               
                 
                   
                     
                       σ 
                       r 
                       2 
                     
                   
                   
                     
                       σ 
                       
                         r 
                         ⁢ 
                         
                             
                         
                         ⁢ 
                         α 
                       
                     
                   
                 
                 
                   
                     
                       σ 
                       
                         r 
                         ⁢ 
                         
                             
                         
                         ⁢ 
                         α 
                       
                     
                   
                   
                     
                       σ 
                       α 
                       2 
                     
                   
                 
               
               ] 
             
           
         
       
     
       FIG. 19  shows a state diagram for the 3D real-time detection multi-object tracker. The core of the tracker  91 A is based on a Kalman Filter in all weather and lighting conditions. The observation model  90  is illustrated in  FIG. 21  which presents an example method to compute the vehicle position by weighting each 3D observation according to its height amplitude. This method permits to improve the accuracy of the estimated position with respect to using only the x and y Cartesian positions. 
     Expression  301  computes the blob position as follows:
 
 P   blob =Σ n=1   N π n   ·P   n  
 
     where π n  is the intensity weight for the observation n, nε{1, . . . , N}, and N is the number of observation grouped together. Step  301  is followed by computing the observation weight depending on the intensity at step  302 . 
     The function  300  normalizes the weight π n  according to the amplitude A n  of the observation P n : 
     
       
         
           
             
               π 
               n 
             
             = 
             
               
                 A 
                 n 
               
               
                 ∑ 
                 
                   A 
                   n 
                 
               
             
           
         
       
     
     The state evolution model  92  is represented by the classical model called speed constant. Kinematics model can be represented in a matrix form by:
 
 p   k+1   =F·p   k   +G·V   k   , V   k   ˜N (0 ,Q   k )
 
     where p k =(x obs ,{dot over (x)} obs ,y obs ,{dot over (y)} obs ) is the target state vector, F the transition matrix which models the evolution of p k , Q k  the covariance matrix of V k , and G the noise matrix which is modeled by acceleration. 
     
       
         
           
             F 
             = 
             
               [ 
               
                 
                   
                     1 
                   
                   
                     
                       Δ 
                       ⁢ 
                       
                           
                       
                       ⁢ 
                       T 
                     
                   
                   
                     0 
                   
                   
                     0 
                   
                 
                 
                   
                     0 
                   
                   
                     1 
                   
                   
                     0 
                   
                   
                     0 
                   
                 
                 
                   
                     0 
                   
                   
                     0 
                   
                   
                     1 
                   
                   
                     
                       Δ 
                       ⁢ 
                       
                           
                       
                       ⁢ 
                       T 
                     
                   
                 
                 
                   
                     0 
                   
                   
                     0 
                   
                   
                     0 
                   
                   
                     1 
                   
                 
               
               ] 
             
           
         
       
       
         
           
             G 
             = 
             
               [ 
               
                 
                   
                     
                       
                         Δ 
                         ⁢ 
                         
                             
                         
                         ⁢ 
                         
                           T 
                           2 
                         
                       
                       2 
                     
                   
                   
                     0 
                   
                 
                 
                   
                     
                       Δ 
                       ⁢ 
                       
                           
                       
                       ⁢ 
                       T 
                     
                   
                   
                     0 
                   
                 
                 
                   
                     0 
                   
                   
                     
                       
                         Δ 
                         ⁢ 
                         
                             
                         
                         ⁢ 
                         
                           T 
                           2 
                         
                       
                       2 
                     
                   
                 
                 
                   
                     0 
                   
                   
                     
                       Δ 
                       ⁢ 
                       
                           
                       
                       ⁢ 
                       T 
                     
                   
                 
               
               ] 
             
           
         
       
       
         
           
             
               Q 
               k 
             
             = 
             
               [ 
               
                 
                   
                     
                       σ 
                       x 
                       2 
                     
                   
                   
                     0 
                   
                 
                 
                   
                     0 
                   
                   
                     
                       σ 
                       y 
                       2 
                     
                   
                 
               
               ] 
             
           
         
       
     
     The equation observation can be written as:
 
 Z   k   =H·p   k   +W   k   , W   k   ˜N (0 ,R   k )
 
     Where Z k =(x obs     k   ,y obs     k   ) t  is the measurement vector, H the measurement sensitivity matrix, and R k  the covariance matrix of W k . 
     
       
         
           
             H 
             = 
             
               [ 
               
                 
                   
                     1 
                   
                   
                     0 
                   
                   
                     0 
                   
                   
                     0 
                   
                 
                 
                   
                     0 
                   
                   
                     0 
                   
                   
                     0 
                   
                   
                     0 
                   
                 
                 
                   
                     0 
                   
                   
                     0 
                   
                   
                     1 
                   
                   
                     0 
                   
                 
                 
                   
                     0 
                   
                   
                     0 
                   
                   
                     0 
                   
                   
                     0 
                   
                 
               
               ] 
             
           
         
       
       
         
           
             
               R 
               k 
             
             = 
             
               [ 
               
                 
                   
                     
                       σ 
                       
                         obs 
                         x 
                       
                       2 
                     
                   
                   
                     0 
                   
                 
                 
                   
                     0 
                   
                   
                     
                       σ 
                       
                         obs 
                         y 
                       
                       2 
                     
                   
                 
               
               ] 
             
           
         
       
     
     The state space model  93 A is based on probabilistic framework where the evolution model is supposed to be linear and the observation model is supposed to be Gaussian noise. In a 3D image, the system state encodes the information observed in the scene, e.g. the number of vehicles and their characteristics is x k   N =(p k   N , l k   N ) with N as the number of detected vehicles, where p k   N  denotes the 2D position of object N at iteration k, l k   N  gives identification, age, lane and the object classification. 
       FIG. 20  shows a state diagram for 3D real-time detection multi-object joint tracker. The core of  91 B is based on a Kalman Filter which addresses the issue of interacting targets, which cause occlusion issues. When an occlusion is present, 3D data alone can be unreliable, and is not sufficient to detect, at each frame, the object of interest. If the algorithm uses the traffic light state  85 , occlusions can be modeled with a joint state space model  93 B. The multi-object joint tracker includes a multi-object interaction distance which is implemented by including an additional interaction factor in the vehicle position. The state space model  93 B encodes the observations detected in the scene, e.g. the number of vehicles, the traffic light state and the interaction between the vehicles located in the same lane by concatenating their configurations into a single super-state vector such as: X k =(O k , x k   1 , . . . , x k   N ) with O k  the size of state space at iteration k and x k   N =(p k   N , l k   N ) the state vector associated with the object N, where p k   N  denotes the 2D position of the object N at iteration k, l k   N  gives identification, age, lane, class, traffic light state and the object interaction. 
     Before integrating measures into the filter, a selection is made by a two-step procedure shown in  FIGS. 22 and 23 : first at step  400  validation gate, then at step  401 A/B data association. The validation gate is the ellipsoid of size N z  (dimension of vector) defined such as:
 
θ t   ·S   −1 ·θ≦γ
 
     where θ t =Z k −            is the innovation, S the covariance matrix of the predicted value of the measurement vector and γ is obtained from the chi-square tables for N z  degree of freedom. This threshold represents the probability that the (true) measurement will fall in the gate. Step  400  is followed by step  401 A/B which makes the matching between a blob and a hypothesis. Then, (i) consider all entries as new blobs; (ii) find the corresponding entries to each blob by considering gating intervals around the predicted position of each hypothesis, (iii) choose the nearest entry of each interval as the corresponding final observation of each blob. At step  402 , the tracking algorithm uses a track management module in order to change the number of hypothesis. This definition is: (i) if, considering the existing assumption, there occurs an observation that cannot be explained, the track management module proposes a new observation; (ii) if an assumption does not find any observation after 500 ms, the track management module proposes to suppress the assumption. In this case, of course, an evolution model helps to guide state space exploration of the Kalman filter algorithm with a prediction of the state. Finally, step  403  uses a Kalman framework to estimate the final position of the vehicle.
     In a 3D image, the system state encodes the information observed in the scene, the number of vehicles and their characteristics is X k =(O k , x k   1 , . . . , x k   N ) with O k  the size of state space (number of detected vehicles) at iteration k and x k   N =(p k   N , l k   N ) the state vector associated with object N, where p k   N  denotes the 2D position of object N at iteration k, l k   N  gives identification, age, lane and the object classification. Step  90  and  92  are unchanged. 
       FIG. 24  shows the steps performed during the execution of the classification algorithm. At step  500 , the algorithm checks if a line is detected in the 3D image. If a line is detected, step  500  is followed by step  501  which computes vehicle length. Vehicle length is defined as the overall length of the vehicle (including attached trailers) from the front to the rear. In order to calculate the length, two different positions are used: X 0  and X 1  . . . X 0  is given by the position of the first detected line and X 1  is given by the trigger line 1 (for example). Once the speed has been estimated, the vehicle length l can be determined such as: 
     l[m]=s[m/S]*(X 1 (t)[s]−X 0 (t)[s])−(X 1 (x)[m])−X 0 (x)[m])+Seg[m]+TH[m] Where s is the vehicle speed, Seg is the length of the detected line and TH is a calibration threshold determined from a large dataset. 
     If the line is not detected at step  500 , step  500  is followed by step  502  which computes the vehicle height. The vehicle height is estimated during the entry into the sensor field of view. As shown in  FIG. 26 , for a known configuration of the detection system, there is a direct geometric relationship between the height of a vehicle  601  and the detection distance  600 . The accuracy  602  is dependent on the half-size of the vertical FOV angle  603 . Height measurement is validated if the accuracy is lower than a threshold. 
     Finally, step  502  is followed by step  503  which computes the vehicle width. Over the vehicle blob, let (y i , x) be leftmost pixel and (y r , x) be the rightmost pixel in the vehicle blob for a given x. Then the width w of the object is determined from the following formula:
 
 w=|y   r − l |
 
       FIGS. 25A ,  25 B and  25 C shows a result of vehicle classification based on the classification algorithm. For example, in  FIG. 25A , the classification result is a heavy vehicle; in  FIG. 25B , it is a four-wheeled lightweight vehicle and in  FIG. 25C , it is a two-wheeled lightweight vehicle. The information from the detection system is flexible and can be adapted to different schemes of classification.  FIG. 25  illustrates graphically the basic elements of the concept of an object-box approach which is detailed below and in  FIG. 27  and  FIG. 28 . 
     The object-box approach is mainly intended for vehicles because this approach uses the vehicle geometry in a LEDDAR image. The vehicles are represented by a 3D rectangular box of detected length, width and height. The 3D size of the rectangular box will vary depending on the detections in the FOV.  FIGS. 27A ,  27 B,  27 C and  27 D show top view frames of a vehicle detected by the LEDDAR sensor.  FIGS. 28A ,  28 B,  28 C and  28 D show corresponding side view frames of the vehicle of  FIG. 27 . 
       FIGS. 27A ,  27 B,  27 C,  27 D and  FIGS. 28A ,  28 B,  28 C,  28 D show the changing 3D size of the rectangle  701  for four example positions of a vehicle  702  in the 3D sensor FOV  703 . When a vehicle  702  enters the 3D sensor FOV  703 , two detections are made on the side of the vehicle (see  FIG. 27A ) and one detection is made for the top of the vehicle (see  FIG. 28A ). The 3D rectangle is initialized with a length equal to 4 m, a width of 1.5 m and a height O Hm  given by:
 
 O   Hm   =H   s −dist*tan(θ)
 
     Where H s  is the sensor height  704 , dist is the distance of the detected vehicle and θ is sensor pitch. 
       FIG. 27B  and  FIG. 28B  represent detections when the vehicle is three-fourths of the way in the detection FOV. Eight side detections are apparent on  FIG. 27B  and one top detection is apparent on  FIG. 28B . The dimensions of the 3D rectangle are calculated as follows: 
     The width is not yet adjusted because the vehicle back is not yet detected.
 
 O   l ( k )=max( L   2   −L   1   ,O   l ( k− 1))
 
 O   h ( k )=max( O   Hm   ,O   h ( k− 1))
 
     Where the points of a segment are clockwise angle sorted so L 2  is the point with the smallest angle and L 1  is the segment-point with the largest angle. O l (k) and O h (k) are respectively the current length and height value at time k. 
       FIG. 27C  and  FIG. 28C  represent detections when the back of the vehicle begins to enter in the detection FOV. Eight side detections and two rear detections are apparent on  FIG. 27C  while one detection is apparent on  FIG. 28C . The dimensions of the 3D rectangle are calculated as follows:
 
 O   l ( k )=max( L   2   −L   1   ,O   l ( k− 1))
 
 O   h ( k )=max( O   Hm   ,O   h ( k− 1))
 
 O   w ( k )=max( L   4   −L   3   ,O   w ( k− 1))
 
     As for the horizontal segment representing the side of the vehicle, the points of the vertical segment representing the rear and/or the top of the vehicle are clockwise angle sorted, so L 4  is the point with the smallest angle and L 3  is the segment-point with the largest angle. O l (k), O h (k) and O w (k) are respectively the current length, height and width value at time k. 
       FIG. 27D  and  FIG. 28D  represent detections when the back of the vehicle is fully in the detection FOV. Six side detections and four rear detections are apparent on  FIG. 27D  while one detection is apparent on  FIG. 28D . The width O lm  dimension is calculated as follows:
 
 O   lm ( k )=α*( L   4   −L   3 )+(1−α)* O   lm ( k− 1)
 
     Where O lm (k) is the current width at time k and α is the filtering rate. 
     The size of the vehicle can then be determined fully. 
     The segmentation algorithm  800  based on a 3D bounding box for selection of the relevant measures is illustrated in  FIG. 29 . The first three steps are identical to that of  FIG. 17 . If step  120  finds horizontal lines, then step  120  is followed by step  121 . As explained above, the points of a segment are clockwise angle sorted with L 2 , the smallest angle and L 1  the largest angle. This segment length is given by L 2 −L 1 . Otherwise, the next step  123  initializes the 3D bounding box with a default vehicle length. Step  121  is followed by step  122  which considers that two segments have a common corner if there is a point of intersection P i  between the two segments with |P i −L 1 | and |P i −L 4 | less than a distance threshold. If no corner is found, step  123  initializes the 3D bounding box with default values. Otherwise, step  124  computes the 3D bounding box dimensions from equations presented above with respect to  FIG. 27C . 
     It is of interest to derive minimum variance bounds on estimation errors to have an idea of the maximum knowledge on the speed measurement that can be expected and to assess the quality of the results of the proposed algorithms compared with the bounds. In time-invariant statistical models, a commonly used lower bound is the Cramer-Rao Lower Bound (CRLB), given by the inverse of the Fisher information matrix. The PCRB can be used for estimating kinematic characteristics of the target. 
     A simulation was done according to the scenario shown in  FIG. 30 . The vehicle  130  is moving at a speed of 60 m/s along a straight line in lane  3 . The PCRB was applied. As shown in  FIG. 31 , the tracking algorithm converges at point  903  at about σ {dot over (K)}F =0.48 km/h after 80 samples. From point  900 , it is apparent that after 16 samples, σ {dot over (K)}F &lt;3 km/h, from point  901  that after 28 samples, σ {dot over (K)}F &lt;1.5 km/h and from point  902  that after 39 samples, σ {dot over (K)}F &lt;1 km/h. Experimental tests confirmed the utility and viability of this approach. 
     Image Processing and Applications 
     The multipurpose traffic detection system uses a high-resolution image sensor or more than one image sensor with lower resolution. In the latter case, the control and processing unit has to process an image stitching by combining multiple images with different FOVs with some overlapping sections in order to produce a high-resolution image. Normally during the calibration process, the system can determine exact overlaps between images sensors and produce seamless results by controlling and synchronizing the integration time of each image sensor and the illumination timing and analyzing overlap sections. Infrared and color image sensors can be used with optical filters. 
     At night, a visible light is required to enhance the color of the image. A NIR flash is not visible to the human eye and does not blind drivers, so it can be used at any time of the day and night. 
     Image sensors can use electronic shutters (global or rolling) or mechanical shutters. In the case of rolling shutters, compensation for the distortions of fast-moving objects (skew effect) can be processed based on the information of the position and the speed of the vehicle. Other controls of the image sensor like Gamma and gain control can be used to improve the quality of the image in different contexts of illumination. 
       FIG. 32A  is a photograph showing an example snapshot taken by a 5 Mpixels image sensor during the day. Vehicles are at a distance of approximately 25 m and the FOV at that distance covers approximately 9 m (almost equivalent to 3 lanes).  FIGS. 32B ,  32 C and  32 D show the quality of the image and resolution of  FIG. 32A  by zooming in on the three license plates. 
       FIG. 33A  is a photograph showing an example snapshot taken by the image sensor at night without any light. This image is completely dark.  FIG. 33B  shows the same scene with infrared light. Two vehicles can be seen but the license plates are not readable even when zooming in as seen in  FIG. 33C . The license plate acts as a retro-reflector and saturates the image sensing.  FIGS. 34A and 34B  use the same lighting with a lower integration time. The vehicle is less clear but the image shows some part of the license plate becoming less saturated.  FIGS. 34C and 34D  decrease a little more the integration time and produce a readable license plate. 
     One way to get a visible license plate at night and an image of the vehicle is to process several snapshots with different integration times (Ti). For example, when the 3D detection confirms the position of a vehicle in the detection zone, a sequence of acquisition of several snapshots (ex.: 4 snapshots with Ti1=50 μs, Ti2=100 μs, Ti3=250 μs and Ti4=500 μs), each snapshot taken at a certain frame rate (ex.: each 50 ms), will permit to get the information on a specific vehicle: information from the 3D sensor, a readable license plate of the tracked vehicle and an image from the context including the photo of the vehicle. If the system captures 4 images during 150 ms, a vehicle at 150 km/h would travel during 6.25 m (one snapshot every 1.5 m). 
     To enhance the quality of the image, high dynamic range (HDR) imaging techniques can be used to improve the dynamic range between the lightest and darkest areas of an image. HDR notably compensates for loss of information by a saturated section by taking multiple pictures at different integration times and using stitching process to make a better quality image. 
     The system can use Automatic License Plate Recognition (ALPR), based on Optical Character Recognition (OCR) technology, to identify vehicle license plates. This information of the vehicle identification and measurements is digitally transmitted to the external controller or by the network to back-office servers, which process the information and can traffic violation alerts. 
     The multipurpose traffic detection system can be used day or night, in good or bad weather condition, and also offers the possibility of providing weather information like the presence of fog or snowing conditions. Fog and snow have an impact on the reflection of the radiated light pulses of the protective window. In the presence of fog, the peak amplitude of the first pulse exhibits sizable time fluctuations, by a factor that may reach 2 to 3 when compared to its mean peak amplitude level. Likewise, the width of the first pulse also shows time fluctuations during these adverse weather conditions, but with a reduced factor, for example, by about 10 to 50%. During snow falls, the peak amplitude of the first pulse visible in the waveforms generally shows faster time fluctuations while the fluctuations of the pulse width are less intense. Finally, it can be noted that a long-lasting change in the peak amplitude of the first pulse can be simply due to the presence of dirt or snow deposited on the exterior surface of the protective window. 
       FIG. 35  shows an example image taken with infrared illumination with the overlay (dashed lines) representing the perimeter of the 16 contiguous detection zones of the 3DOR. Apparent on  FIG. 35  are high intensity spots  140  coming from a section of the vehicle having a high retro-reflectivity characteristic. Such sections having a high retro-reflectivity characteristic include the license plate, retro-reflectors installed one the car and lighting modules that can include retro-reflectors. An object with retro-reflectivity characteristic reflects light back to its source with minimum scattering. The return signal can be as much as 100 times stronger than a signal coming from a surface with Lambertian reflectance. This retro-reflectivity characteristic has the same kind of impact on the 3DOR. Each 3D channel detecting a retro-reflector at a certain distance in its FOV will acquire a waveform with high peak amplitude at the distance of the retro-reflector. The numbers at the bottom of the overlay (in dashed lines) represent the distance measured by the multipurpose traffic detection system in each channel which contains a high peak in its waveform. Then, with a good image registration between the 2D image sensor and the 3D sensor, the 2D information (spot with high intensity) can be correlated with the 3D information (high amplitude at a certain distance). This link between 2D images and 3D detection ensures a match between the identification data based on reading license plates and measurements of position and velocity from the 3D sensor. 
     The license plate identification process can also be used as a second alternative to determine the speed of the vehicle with lower accuracy but useful as a validation or confirmation. By analyzing the size of the license plate and/or character on successive images, the progression of the vehicle in the detection zone can be estimated and used to confirm the measured displacement. 
     The embodiments described above are intended to be exemplary only. The scope of the invention is therefore intended to be limited solely by the appended claims.