Archive for Reading Roadsigns

Ongoing Experiments

Since coming back to university after the Christmas break and completing my January exams I’ve had plenty of time to continue my experimentation on the reading roadsigns project and thought I’d post a quick update on whats been going on.

Recently I’ve been running a number of experiments in Matlab using SIFT and attempting to get various roadsigns recognised by using a cropped training set for a particular sign and then matching it against keypoint descriptors found in a test image.

I’ve been gathering statistical data and dumping this out to a file for analysis and further work but I’ve also been generating match images for each roadsign tested against the most favorable image from the training set. To give people an idea with how this is progressing I include an example of a very successful result on a STOP sign below.

Good Result

Its not all rosy though and I’ve been given food for thought after my interim report and some failures of the SIFT algorithm in recognising certian signs.

In my initial experimentation with actual roadsigns I decided to go for a simple sign as this would be less likely to be susceptable to noise. This was in fact quite an unwise decision as SIFT works by finding particularly unique points and I had effectively removed the possiblity of it finding such points by using a simple sign. I include below a matches image for a No Entry sign.

No Entry Sign Result

As you can see, its actually quite noisy. This is a problem which got me thinking about how I can make the whole process more robust and forced me to return to some of my early research on object recognition.

If I can use SIFT as a pre-processor then I can identify signs quickly and easily that have many descriptors such as STOP signs and then use a more basic system such a a template or colour match to identify the simpler signs such as the No Entry sign. I could also do it the other way around and will need to perform tests to decide what the best order is.

I’m currently working on an idea that SIFT could be used to detect the presence of any sign (not which one it is, but where it is) and then further tests could perform the recognition. In addition I’m researching examples of where SIFT has been modified to be used in colour and also how best to display experimental results. I’m also in the process of writing code to fully automate my training and testing process in Matlab so I should be able to run batch jobs and get results and test theories quicker.

Watch this space for more updates – its all go!

Comments (2)    

In Use

It is interesting to note where the kind of research I am doing is ending up in the real world. This technology from Siemens highlights the presence of speed limit roadsigns to the driver and interfaces with the cruise control system. Pretty cool.

Siemens heads up road sign display

In the future, a system from Siemens that automatically recognizes speed limits on traffic signs will make driving even more comfortable — and help motorists to avoid speeding tickets. The system works with a camera in the car that scans the scene in front of the car for traffic signs and forwards the information to an onboard computer. With the help of the cruise control, the system then keeps the car within the speed limit. The risk of unintentionally driving too fast is particularly high when motorists are in unfamiliar surroundings or faced with road construction sites.

Part of a comprehensive network of driver assistance systems called pro-pilot being developed by the automotive supplier Siemens VDO, the traffic sign recognition system is scheduled to go into series production in about two years. Experts from Siemens have installed the system in a luxury class car, along with a host of additional assistance devices, including a lane recognition system, a night vision system and a parking guidance system. Several automakers have already tried out the test vehicle and expressed strong interest in the recognition system.

The system uses a CMOS camera installed near the rear-view mirror to continuously scan the road for traffic signs. The images are then compared with patterns of speed limit signs stored in the system’s memory. If the software discovers a speed limit, the system notifies the driver of this fact by showing the value in the speedometer or in a head-up display. If the cruise control is switched on, the car automatically decelerates to stay within the speed limit. The system also uses data supplied by a navigation system to determine if the vehicle is being driven on a highway or in a town or city. And because the navigation system also contains information on special traffic signs — including those that impose speed limits only at certain times — the recognition system can also react to such situations. The traffic sign recognition system so far is designed for use in new vehicles; its many components’ complicated networking today makes retrofitting too expensive. (IN 2006.10.4)

Comments off    

Scale Invariant Feature Transform

Recently I’ve been experimenting with the Scale Invariant Feature Transform (SIFT) algorithm. I began by downloading the open SIFT implementation for Matlab and then used it to gain an understanding of how the algorithm worked.

Since first using the implementation I have been able to demonstrate how to find objects that have previously been seen by the system in a completely new image, and have also managed to make use of the SIFT algorithm in a more generic fashion by applying it to one of my coursework tasks – to find faces and cars in a set of images.

The power and potential in this algorithm becomes immediately apparent after using it on test image for an hour or so and indeed my reading since first use of it in Matlab indicates to me that the use of this algorithm in the kind of task I am researching is highly recommended by a number of academics. I certainly intend to use my findings here as an important component in my interim project report.

Comments off    

Welcome

Welcome to the project blog of Reading Roadsigns. I wanted a place where I could quickly pen my thoughts about my project and share my findings with the world when I hit upon something I feel is worthy of a mention. I hope that though this site I can keep myself focused on the project by feeling I need to have something to say about what I’m doing and also by receiving input on my work in progress from the community at large.

I welcome any and all comments on my work and if you have something more substantial to say I encourage you to drop me an e-mail.

Comments (1)