How to do training in matlab using SVM?

3 次查看(过去 30 天)
I have to detect humans from an image for that I should first train the system using SVM.How to do training in matlab using SVM?What is the code for the same?

回答(2 个)

Dima Lisin
Dima Lisin 2015-3-13
Hi Anushka,
First of all, you can use the vision.PeopleDetector object in the Computer Vision System Toolbox to detect humans. The object includes a pre-trained HOG-SVM classifier.
Alternatively, you can use the trainCascadeObjectDetector. This function will train a boosted cascade classifier, rather than an SVM.

Nikolay S.
Nikolay S. 2015-3-17
编辑:Nikolay S. 2015-3-17
Good evening Anna.
Allow me to add my humble opinion.
To train and SVM , you need a series of positive and negative examples- usually you need hundreds/thousands of each, with negatives being much more (~x10, ~x20...) then positives. In case of images this will mean you need to have multiple examples of human figures photos as positives, and relevant images without such figures as negatives (we usually used all image regions without humans as negatives). This usually implies having sufficient database with ground truth markings/ annotations. Building this on your own is lots of work, but luckily for many problems under serious research you have available set of examples. Now, you convert each image (negative and positive) into a feature vector- resulting in a huge group of vectors- each with a priory know label- "positive" or "negative". You provide this to SVMtrain function (depending on the toolbox you're using), specifying SVN parameters- linear, RBF, etc, and voila, you got a trained SVN. Now, with SVNclassify- using the trained classifier and given a feature vector you will know whether is is considered positive and negative. You got Yourself a detector ! Good luck!

类别

Help CenterFile Exchange 中查找有关 Get Started with Statistics and Machine Learning Toolbox 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by