pjreddie / darknet

Convolutional Neural Networks
http://pjreddie.com/darknet/
Other
25.7k stars 21.33k forks source link

Running yolov3 on video. Recognizes pictures of objects but not the real 3D objects #1610

Open minertom opened 5 years ago

minertom commented 5 years ago

Hi, I have gotten the yolov3 darknet pretrained network weights to run with a webcam. The network had been trained with "aeroplane" and there are multiple jpgs in the system, and I believe that it is the coco dataset. From my webcam, the network recognizes and puts bounding boxes around objects like my laptop, a chair, a mouse, etc. So far so good. But when I put some small aircraft model in front of the camera, it is not recognized at all. I have raided second hand stores and found a half a dozen airplanes and NONE are recognized. However, I printed out airplane pictures from the COCO dataset, and when these color pictures are waved in front of the camera, I get good recognition results.

Since the video from the webcam is used, successfully, to recognize real objects on my desk, I am led to believe that the problem is not in the network, including the camera. I can only suspect that the training is somehow incomplete. I just don't see how the aircraft pictures can be used successfully while the real thing is not recognized.

Any ideas?

Thank You Tom

Liedermaus commented 5 years ago

Actually it should work, at least it worked for me with a "Van" from the toys of my son. But the standard trained model is very sensitive to size and rotation. Try matching the size from the model to the relative size of the images. Try to match the direction of the plane to that of the planes in the images. When keeping it in your hands you might have an unrealistic angle... Try to remove your fingers/hands from the toys as good as possible

Or

Train it yourself, that is actually what I'm doing in my area of interest. Then you can train on BIG and small airplanes and rotated airplanes and ...