问题
I am trying to train an object detector using D-lib. I selected close to 100 images for training. I am using the Python environment. As per documentation, I used the Imglab tool to draw the bounding boxes across the images. Every image is almost 4000*3000 pixels in size. And then placed the generated XML file into my location and called the detector program. Here are my doubts and questions.
What should I use as the testing XML file while running the program? I ran without assigning any testing XML in place. However, I get the following. Training with C: 5 Training with epsilon: 0.01 Training using 8 threads. Training with sliding window 81 pixels wide by 79 pixels tall. Training on both left and right flipped versions of images. Killed What does 'killed' mean by the way?
What should I do now? Please guide!
回答1:
The testing XML file gives images and object annotations to be used to check the accuracy of your object detection. The file can be generated using imglab as with the training XML. It should contain data that is similar to, but not identical to, your training dataset.
The Killed
message is due to memory issues. In Linux, it is the result of the OOM Killer. Since the images are so large, your machine is running out of memory and killing the training process.
Possible solutions:
1) Configure the OOM killer to allow dlib to use more memory.
2) Scale down the images if possible for your application.
3) Use a machine with more RAM. If you don't have one on hand, AWS offers several high-RAM EC2 options at relatively low cost.
来源:https://stackoverflow.com/questions/39024165/d-lib-object-detector-training