c++computer-visionmotion-detectionsimd-librarysynet

Detection of small fast objects with using of Simd::Motion::Detector


I try to use motion detector to detect shooting star in the video with the example of code UseMotionDetector.cpp. If I use the motion detector with default options than nothing works. I think that may be connected with small object size, its fast speed, or big noise. The motions detector has a big amount of parameters (and also this) but I have no experience in using of any motion detector.

So I have some questions:

  1. Is this task can be resolved with using of algorithms of motion detection?
  2. Is this motion detector suit for this job?
  3. How to tune its paraameters?

Thank in advance!


Solution

  • I have analysed your video and there are some troubles which don allow to work Simd::Motion::Detector properly with default settings. And you have already listed most of them above:

    1. The object (shooting star) has small size.
    2. It moves too fast.
    3. Time of its existance is short.
    4. There is a big noise on the video.

    In order to solve these troubles I changed following parameters of motion detector:

    To detect objects of small size I decreased minimal object size in model:

    Model model;
    model.size = FSize(0.01, 0.01); // By default it is equal to FSize(0.1, 0.1).
    detector.SetModel(model);
    

    To reduce influence of fast motion:

    Options options;
    options.TrackingAdditionalLinking = 5; // Boosts binding of trajectory. 
    

    To resolve trouble of short object existence time:

    options.ClassificationShiftMin = 0.01; // Decreases minimal shift of object to be detected.
    options.ClassificationTimeMin = 0.01; // Decreases minimal life time of object to be detected. 
    

    To reduce big noise:

    options.DifferenceDxFeatureWeight = 0; // Turns off gradient along X axis feature.
    options.DifferenceDyFeatureWeight = 0; // Turns off gradient along Y axis feature.
    detector.SetOptions(options);
    

    And it works! I hope that I helped you.