-1

I want to train a simple classifier for object detection in images. I have around 500 images picked up from the internet which has the object that I want to detect. However, creating bounding boxes (i.e. knowing the start and end points and the size of the box) or segregating the images in to positive areas and negative areas seems like a lot of manual labour to me.

Is there some app/software which makes the process easier (there will obviously be some amount of labour to be done)?

josliber
  • 43,891
  • 12
  • 98
  • 133
  • 1
    So you want a program to detect the object in images so that you can write a program to detect those objects in images? - It needs to be a manual process so that you know you have selected the right parts of the imge to train your classifiers – GPPK Jul 01 '14 at 08:19
  • I want some software in which if I make a bounding box around the object it gives me positives and negatives on it's own or gives me the location of the pixel from which the box is starting and and the size of the box. For example: http://www.learncomputervision.com/articles/programming/how-to-train-opencv-haar-classifiers/ Positive Builder used in this documentation for videos. Is there some tool similar to that which does it for images? – user3626948 Jul 01 '14 at 08:23

1 Answers1

0

There was something called Positive Builder in C#. What I do is to manually crop images (e.g. Paint.NET) and a cute script like this to produce the desired text file:

void positives()
{
    std::vector<std::string> files;
    files=readFilesFromDir("./Cars");

    std::ofstream myfile;
    myfile.open("./positives.txt");

    for (int i=0;i<files.size();i++)
    {
        cv::Mat img=cv::imread(files[i]);
        myfile<<files[i]<<" 1 0 0 "<<img.cols<<" "<<img.rows<<"\n";
    }
    myfile.close();
}

This readFilesFromDir is a different question.

Community
  • 1
  • 1
LovaBill
  • 5,107
  • 1
  • 24
  • 32