Click here to Skip to main content
15,890,579 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Hi, I am currently doing my final year project on Obstacle Detection using an AI technique, and was wondering if it is possible to do with Kohonen SOM. I have been reading a lot on the web on Kohonen and find nothing relating it to video processing, other than clustering and reducing the image vectors?. I believe that it is possible but still have not find any useful sources, which kinda bugs me. If anyone can share some useful links on it would be really grateful. :(
Posted

Kohonen SOMs are, like the name suggests. A map that self organises, eg, clusters, reduces vectors. You CAN use them to do processing of video streams...if there's something in the stream you want to cluster/reduce vectors of. If your trying to use a SOM to recognize obstacles or find edges or see a face then you're using entirely wrong algorithm. A SOM can't do this by itself.
 
Share this answer
 
Comments
lKENl 11-Feb-11 21:54pm    
I thought as much. What if I still want to use Kohonen? Which other algorithm can help assist it besides Back Propagation? And whatIf I use pixel change for obstacle detecting, how can Kohonen help? Sorry for asking too many questions. :D
Matty22 12-Feb-11 1:29am    
To my knowledge there's no method you could use to make a SOM do obstacle detection.
You can use a SOM to create a training set that have IMPORTANT vectors (hence using the clustering component of the SOM) Then use some OTHER method to determine if there is a match

But by itself. SOMs have no more to do with detecting objects than Boyle's gas law does.

The strongest object recognizable systems don't even use neural network or AI at all.
They use eigenfaces/eigenfeatuers and principle component analysis

http://en.wikipedia.org/wiki/Eigenface

Other options are Hopfield networks, edge detection, etc.

But yeah..you can probably forget about using a SOM for anything like this...not really what they do. (Principle component analysis in eigenfeatures is kind of related to what a SOM does (vector reduction) But it's only a small part of the problem of 'object recognition' You COULD use a SOM as a component in a object recognition system..but it would only be a very small part that's used to help prepare the training set for another system that does the actual recognition.

lKENl 12-Feb-11 7:36am    
Thank you for clearing some of my problems. Mind helping me with this now?
Let say I have a video file(no obstacles) stored in a database. Now I have another video file(with obstacle), can Kohonen help in comparing these two video files to see differences in them? because I thought if BP can do it , so why wouldn't Kohonen do the same, since the algorithms are almost the same.
Matty22 12-Feb-11 20:38pm    
Because SOM is unsupervised learning you've got no control as to how it clusters things.

However that doesn't preclude generating a 'map' with the SOM and using some other technique to look up a test image from the camera in the map to decide if there is an obstacle or not


Have a look at this paper
http://metronu.ulb.ac.be/imacs/papers/T3-I-112-1018.pdf

Have a look at Fig 8 in that document.

In that paper seems like they use a SOM to create a map clustered into regions like 'object in middle, object in far left, object in top right, no object' etc. Then in order to perform the detection they look up the current image in the map produced by the SOM.

But keep in mind the SOM itself isn't being run/executed to determine if there's an obstacle here. The SOM only produced a training map that you have to interpret in code. This is because SOM training is unsupervised, you have no control over what output neuron will mean 'no obstacle'

This is different from say a perceptron or hopfield neural network where you use supervised training to tell the network to turn a neuron to 1.0 if there is an object and -1.0 if there is none. With the SOM you have to write code to use the map as a guide. With a supervised trained neural network, the neural network can give an answer to questions like 'is there an object in the way?' without having to look up stuff in a map like with a SOM. The SOM always has many many outputs that you have to interpret somehow....with a more traditional neural network you can just have 1 output, 'is there an object in the way?'
lKENl 13-Feb-11 3:01am    
Oh yeah I totally forgot about Kohonen being unsupervised. Thank you very much for the explanation. So in other word, I have to make Kohonen create a map based from the stored video file(with no obstacle) and then use another technique to cooperate video file(with obstacle) with the map created. Sounds like a tedious thing to do. I have not read much on Hopfield Network, nor the eigenface, so guess I could try and use edge detection, if my supervisor allows me to. Thank you again for the help and tips. Now I can rest a bit after knowing what is needed to be done.
 
Share this answer
 
Comments
JF2015 11-Feb-11 8:13am    
Moved from OP's answer:
I have read the article, but it seems to be more on clustering. What I am looking for is to use Kohonen for the processing of a real-time video stream. Can Kohonen do this? Or am I missing something?
Matty22 11-Feb-11 20:57pm    
Kohonen SOMs are, like the name suggests. A map that self organises, eg, clusters, reduces vectors. You CAN use them to do processing of video streams...if there's something in the stream you want to cluster/reduce vectors of. If your trying to use a SOM to recognize obstacles or find edges or see a face then you're using entirely wrong algorithm. A SOM can't do this by itself

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900