I know that the OpenCV has the tools to do noise filtering, edge detect. But as i know it only preparation for recognition . Pattern recognition mean classification objects (the selection one object from others). Should I write your own algoritm of recognition (neural network for example) or OpenCV already have such a function? OpenCV works with face recognition only or can be set to any object recognition (after learning for example)? What algorithms are used for this?