Vehicle detection system
11756420 · 2023-09-12
Assignee
Inventors
Cpc classification
G06F18/214
PHYSICS
H04W4/44
ELECTRICITY
G08G1/0175
PHYSICS
G06V10/80
PHYSICS
H04N23/667
ELECTRICITY
G06F18/241
PHYSICS
International classification
G06F18/214
PHYSICS
G06F18/241
PHYSICS
Abstract
A vehicle detection system 200 comprises: a receiver 202 arranged to receive data transmissions from a vehicle 210; a camera 204 arranged to capture an image of the vehicle 210; and a processing subsystem 206 arranged to implement a trained model for detecting and/or classifying vehicles in an image. The system 200 is arranged to operate in a first mode wherein: the camera 204 captures an image of a vehicle 210 and the receiver 202 receives a data transmission from the vehicle 210; and the processing subsystem 206 is arranged to use information resulting from the data transmission received and the image to train the model further. The system 200 is also arranged to operate in a second mode wherein: the camera 204 captures an image of a vehicle 210 and the receiver 202 does not receive a data transmission; and the processing subsystem 206 is arranged to use the image and the trained model to detect and/or classify the vehicle 210 in the image.
Claims
1. A vehicle detection system comprising: a receiver arranged to receive data transmissions from a vehicle; a camera arranged to capture an image of said vehicle; and a processing subsystem arranged to implement a trained model for detecting and/or classifying vehicles in an image; wherein the system is arranged to operate in at least a first mode wherein: the camera captures an image of a vehicle and the receiver receives a data transmission from the vehicle; and the processing subsystem is arranged to use information resulting from the data transmission received and the image to train the model further; and a second mode wherein: the camera captures an image of a vehicle and the receiver does not receive a data transmission; and the processing subsystem is arranged to use the image and the trained model to detect and/or classify the vehicle in the image.
2. The vehicle detection system of claim 1 wherein the trained model comprises a neural network.
3. The vehicle detection system of claim 2 wherein the neural network comprises a convolutional neural network.
4. The vehicle detection system of claim 3 wherein the convolutional neural network is arranged to provide an output image where the resulting size is independent of the input image size.
5. The vehicle detection system of claim 4 wherein the convolutional neural network is arranged to apply a non-linear convolution step to extract a strongest image feature in each of a plurality of subsections.
6. The vehicle detection system of claim 1 wherein the data transmission comprises a unique identification code.
7. The vehicle detection system of claim 1 wherein the data transmission comprises at least one vehicle parameter.
8. The vehicle detection system of claim 1 arranged to send data from the data transmission to an external server and to receive from the server at least one vehicle parameter.
9. The vehicle detection system of claim 1 arranged, in the second mode of operation, to identify the vehicle by determining at least one vehicle parameter using the captured image.
10. The vehicle detection system of claim 9 wherein the processing subsystem is arranged, in the first mode, to use the vehicle parameter to train the model further by correlating the vehicle parameter to the captured image.
11. The vehicle detection system of claim 1 arranged to determine a license plate number of the vehicle using a dedicated image recognition algorithm.
12. The vehicle detection system of claim 1 comprising a plurality of cameras.
13. The vehicle detection system of claim 1 arranged to track the vehicle using a plurality of images.
14. The vehicle detection system of claim 1 arranged to acquire a transmission from the vehicle using a polling operation.
15. The vehicle detection system of claim 1 wherein the processing subsystem is arranged to pre-process the image based on external information separate from the image and the data transmission.
16. The vehicle detection system of claim 15 comprising a plurality of neural networks and arranged to selectively train a specific neural network depending on the external information relating to conditions during capture of the image.
17. The vehicle detection system of claim 1 arranged to pre-process the captured image based on conditions in a locality of the system.
18. The vehicle detection system of claim 1 comprising a sensor subsystem arranged to monitor conditions in a locality of the system.
19. A method of detecting vehicles, the method comprising: capturing an image of a vehicle using a camera; using a receiver to listen for a data transmission from the vehicle; determining whether said data transmission has been received from the vehicle; if said data transmission is received from the vehicle, using said image to train a trained model further to detect and/or classify vehicles, and if no data transmission is received from the vehicle, using the image and the trained model to detect and/or classify the vehicle in the image.
20. A non-transitory computer-readable medium having stored thereon program instructions that, upon execution by a computing device, cause the computing device to: capture an image of a vehicle using a camera; listen for a data transmission from the vehicle; determine whether said data transmission has been received from the vehicle; if said data transmission is received from the vehicle, use said image to train a trained model further to detect and/or classify vehicles, and if no data transmission is received from the vehicle, use the image and the trained model to detect and/or classify the vehicle in the image.
Description
BRIEF DESCRIPTION OF DRAWINGS
(1) Some preferred embodiments of the present invention will now be described, by way of example only, and with reference to the accompanying drawings, in which:
(2)
(3)
(4)
(5)
(6)
DETAILED DESCRIPTION
(7)
(8) The CEN DSRC transceiver 202 is arranged to communicate with a CEN DSRC tag (not shown) in a vehicle 210. As is known per se in the art, the CEN DSRC tag transmits data identifying the vehicle to the CEN DSRC transceiver 202. This information includes a unique identification number (e.g. the license plate number) as well as information such as the size and class of the vehicle 210. However, it is appreciated that not all vehicles may possess a working CEN DSRC tag, therefore a system which relies solely on receiving such identifying information would be ineffective at detecting, identifying and/or classifying all vehicles. Therefore, as will be described below, the system 200 also includes image recognition capability to detect and/or identify a vehicle 210 from which no transmission is received.
(9) The CEN DSRC tag may not transmit a data transmission until a polling transmission is received by the tag. To account for such circumstances, the CEN DSRC transceiver 202 periodically transmits a polling signal. Any suitable equipped vehicles 210 should then transmit a data transmission to the system 200 in response.
(10) The camera 204 is arranged to capture images along the road on which the system 200 is installed. The captured images are processed by the processing subsystem 206. The processing subsystem 206 implements, and in some circumstances further trains, a trained model comprising a convolutional neural network as discussed in more detail below in relation to
(11) The system 200 shown in
(12) The system 200 communicates with an external server 214 via the cellular data transceiver 207 which connects to a public mobile data network. Alternatively a wired connection to a fixed network, e.g. comprising fiber optic cable, could be provided. The external server 214 shown in
(13)
(14) However, in contrast to the embodiment shown in
(15) Operation of the embodiments of
(16) In the system 200 shown in
(17) In step 404, the image captured by the camera 204, 254 is pre-processed by the processing subsystem 206, 256 based on information obtained from the environmental condition monitoring system 212 or the weather data server 280. As will be explained below, pre-processing using such external information is used to select the most appropriate neural network or to enhance the further training which can be provided.
(18) In a simple form, this pre-processing could be dependent on light conditions under which the image was captured where the condition monitoring system 212 provides information on the light levels detected. The processing subsystem 206 uses the information provided by the condition monitoring system to label the images by the light levels under which they were taken.
(19) In a more complex form, the categories could be expanded further. Further information regarding the weather conditions, obtained from the monitoring system 212 or via communication with an external server 214, 270 could be used to provide more detailed categories. In the system 250 of
(20) In step 406, the system 200, 250 determines whether the CEN DSRC transceiver 202, 252 has received a data transmission signal from a DSRC tag in the vehicle 210, 260.
(21) The system 200, 250 may determine in step 406 that a transmission is not successfully received. This may be either due to either no vehicle being present e.g. in the range of the CEN DSRC receiver 202, 252 and/or in the camera image, or a vehicle 210, 260 passing through the system which has no CEN DSRC tag, or the transmission suffering too much interference.
(22) In step 416, the processing subsystem 206, 256 uses the model and the captured image to determine whether a vehicle is present. In examples where the model comprises a plurality of convolutional neural networks, the label may be used to choose an appropriate CNN. More specifically several steps of pre-processing are applied to reduce the data volume and the number of parameters. The CNN has multiple convolution layers effectively creating multiple derived images from the input image. The convolution layer (or process) employs a sliding window with weights that is applied to a subsection of the image to produce a weighted average value for each subsection. The convolution process results in an output image where the resulting size is independent of the input image size (i.e. camera resolution). Before the convolution process, standard machine learning procedures are employed including converting colour input images to grayscale, cropping areas where no vehicle should be detected, and normalizing grayscale values applied. Convolution filters are arranged to detect edges and corners in the image. This means that the inner layers of the model will work on edges and corners in the original image and not areas of uniform colour.
(23) To reduce the size of the input data and thus the model parameters, another non-linear convolution step is applied to extract a strongest image feature, e.g. an edge or corner, in each of the subsections. The large amount of images with known classification which are provided by embodiments of the invention make it possible to benefit from additional layers compared to what might typically be used.
(24) In step 418 the processing subsystem 206, 256 determines whether a vehicle has been detected.
(25) If at step 418 it is determined that there is no vehicle present in the captured image, the method starts again from step 402.
(26) Alternatively, at step 418, if the system 200, 250 determines a vehicle 210, 260 has been detected, i.e. a vehicle 210, 260 is present in the image, the processing subsystem 206, 256 uses the captured image, the pre-processing label and the model to classify the detected vehicle 210, 260 (step 420). In examples where the model comprises a plurality of neural networks, the label may be used in this step to select an appropriate neural network. Unique identification may also be carried out using a license plate recognition algorithm.
(27) However, in some applications or instances, it may not be possible or necessary to correctly uniquely identify the vehicle 210, 260 from the captured image. For instance, whilst the system may include a license plate recognition algorithm, it may be unable to determine the license plate e.g. owing to the resolution of the image, the size of the number plate in the image. In other applications, the system 200, 250 may not be designed to identify a license plate. In such instances, the system 200, 250 may simply classify the detected vehicle 210, 260 based on relevant parameters (e.g. the length and/or width of the vehicle). Classifying the detected vehicle 210, 260 based on the relevant parameters may be sufficient, for example, to classify the vehicle in the correct toll tariff so that the vehicle 210, 260 can be charged appropriately at a tolling station. The classification of the detected vehicle may also be sufficient to provide data for analysis of road use, for example how much each classification of vehicle (e.g. motorcycle, car, lorry) uses the road.
(28) Alternatively, if a transmission has been successfully received at step 406, step 408 is implemented. In step 408 the system 200, 250 identifies the vehicle 210, 260 based on the transmission received. The signal received by the CEN DSRC transceiver 202 includes a unique identification code, therefore providing a unique identification of the vehicle. This unique identification code could be the license plate number or some other unique identifier which can be used to determine the license number from the licensing agency server 290.
(29) The system 200, 250 then proceeds in step 410 to determine relevant information and parameters relating to the vehicle 210, 260 using the transmission received in step 408. Whilst the transmission received in step 408 may already include additional information such as the model, classification (for example whether car, lorry, motorcycle), dimensions of the vehicle 210, 260, it may instead be necessary for such relevant information to be obtained by communicating with a remote server 214, 290. The classification and/or dimensions of the detected vehicle 210, 260 determined in step 410 may be used in tolling applications to levy a charge suitably according to predetermined toll tariffs. This may allow for an owner of the vehicle 210, 260 to automatically be charged the correct toll at the toll gate, without relying on the driver or an operator to select the correct toll tariff for the vehicle. Additionally, an account associated with the unique identification number of the vehicle 210, 260 is automatically debited with a suitable charge based on the classification of the vehicle 210, 260. Account information may be held in a payment server (not shown). In the system 250 of
(30) The additional information and parameters relating to the vehicle 210, 260 determined in step 410 may also be used to analyse road use. This could be performed by a component of the system 200, 250 such as the server system 270 and/or analysis could take place in a separate remote system.
(31) In step 412, the captured image is labelled by the processing subsystem 206, 256 with the relevant information, such as the model, classification and dimensions of the vehicle 210, 260 determined in step 410. The image may additionally be labelled with the category determined in step 404.
(32) In step 414, the labelled image is used to train the model further. For a model that comprises a neural network, the further training involves strengthening certain pathways within the neural network to create a more accurate model. In particular, using a labelled image may help to strengthen links and pathways in the neural network. While training the model, a relevant cost function is used to measure the n-dimensional distance between the known classification vector and the output from the neural network. In general, neural networks will have better performance as additional layers are added, but this requires a larger training dataset. This is exploited in accordance with the invention where a continuously growing training set is available.
(33) In examples where the model comprises a plurality of neural networks, the label assigned to the image in step 404 may be used to select a suitable neural network specific to the label (e.g. environmental conditions) to further refine. As different neural networks are provided with different images according to their categorisation, different pathways will be strengthened in different neural networks. Over the course of multiple iterations of further refinement, the different neural networks may become increasing different as different pathways are strengthened.
(34) Whilst step 410, step 412 and step 414 may take place sequentially directly after step 408, these steps may occur at a later point. The identification of the vehicle based on the transmission may be stored, e.g. in a memory within the system or in an external cloud storage, and steps 410 to 414 completed at a later point. Alternatively, only step 412 or step 414 may be delayed. For example, step 414 may only be implemented once a significant number of labelled images have been acquired by the system 200, 250. The training of the model may then occur in batches, for example once a day, rather than continuously throughout the day.
(35) A delay in implementing one or more of steps 410 to 414 may occur when, for example, the road on which the system 200, 250 is implemented is experiencing a high volume of traffic and the time delay between consecutive vehicles 210, 260 is small, helping to reduce the overall workload of the system during this period.
(36) Typically the method is repeated continually, many times a second
(37) Repeating the steps set out in
(38) In an alternative embodiment where polling is not continually performed, following the detection of a vehicle in step 418, the system performs a polling operation—i.e. the DSRC transceiver 202, 252 transmits a polling signal which is received by any CEN DSRC tags in a vehicle 210, 260. A CEN DSRC tag then responds with an identifying transmission. In this embodiment, the model is used to detect the vehicle 210, 260, the identifying transmission is used to identify the detected vehicle, and step 420 is unnecessary. Should no response be received by the CEN DSRC transceiver then step 420 is conducted as described above.
(39)
(40) Whilst the systems 200 and system 250 of the first and second embodiments only comprise a single camera 204, a similar system 300 is shown in
(41) Similarly to the embodiment shown in
(42) In the system 300, which include two cameras 304, 305, both cameras 304, 305 typically continuously captures images. Tracking of the vehicle 310 can be performed over an extended section of road on which the system is installed, as the vehicle 310 can be tracked first using consecutive images captured by the first camera 304 and then tracked using consecutive images captured by the second camera 305.
(43) Furthermore in this embodiment, the processing subsystem 306 additionally labels an image in step 412 as being captured by both the first camera 304 and the second camera 305. Therefore, in step 414, the model is further refined using this information. In examples where the model comprises a plurality of neural networks, labelling an image according to the capturing camera 304, 305 may allow a suitable neural network for a specific camera 304, 305 to be selected to refine. It will be appreciated that having distinct neural networks associated with each camera may be beneficial in allowing them to become adapted to the particular characteristics of their location and outlook and for recognising the front or rear of a vehicle respectively.
(44) Thus it will be appreciated by those skilled in the art that the specific embodiments of the inventive concepts described herein provide systems and methods suitable for training a model to detect and/or classify vehicles in situ. This may provide significant benefits over known devices. It will further be appreciated that many variations of the specific arrangements described here are possible within the scope of the invention.