Skip to content

Mr-Ojii/MotionTracking_MK-II_Plus

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

94 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MotionTracking MK-II Plus

AviUtl object tracking (rubbish) plugin based on LKT/optical flow. Use OpenCV 4.9.0 or newer.

System Requirement

*- CPU with AVX support (Not tested on SSE-only CPU)
*- >= 2GB RAM
*- Windows 7 or later
*- AviUtl 1.10
*- Adv.Editing 0.92

Installation

Dump the .AUF and MotionTracking_model folder into
your favorite folder where AviUtl loads filter plug-ins

The menu name should be "MotionTracking MK-II Plus"

Additional work is required if Methods 4, 5, 6 or 7 are to be used.

For Method 4 (GOTURN)

  1. Download each data from this URL
  2. Extract the splited ZIP file
  3. Dump the
    • goturn.caffemodel
    • goturn.prototxt
      into MotionTracking_model folder

For Method 5 (DaSiamRPN)

  1. Download the following file from the URL listed as a comment out in the source code at this URL
  • dasiamrpn_model.onnx
  • dasiamrpn_kernel_r1.onnx
  • dasiamrpn_kernel_cls1.onnx
  1. Dump each files into MotionTracking_model folder

For Method 6 (Nano)

  1. Download the following file from this URL
  • nanotrack_backbone_sim.onnx
  • nanotrack_head_sim.onnx
  1. Dump each files into MotionTracking_model folder

For Method 7 (Vit)

  1. Download the following file from this URL
  • vitTracker.onnx
  1. Dump each files into MotionTracking_model folder

Helper Plugins

The single AUF actually contains two more helper plugins:

  1. Pre-track: HSV Cvt
  2. Pre-track: BGSubtraction

HSVCvt convert the RGB image into HSV, then display it as if RGB. It can also display only one of the HSV channels.

BGSubtraction aims to isolate the moving object from the background. It can output the isolated RGB image, or output a grey-scale mask. Beware that a large Range value may cause out-of-memory problem, or enable Large-Address-Aware to get around.

Help

MotionTracking MK-II Plus

Steps

  1. Mark a section to track
  2. Click 1st button, Drag a box on the object to be tracked(in popup Window). Close the popup Window.
  3. Click Analyze, wait for completion.
  4. Activate the View Result and check. IF result is good, check Invert Position if necessary, click SaveEXO or check QuickBlur. Otherwise, click Clear Result and go back to step 0 or 1.

Save EXO

Auto correct for single sandwiched error result.
Support CJK filename

Options

Method

Specifies the algorithm to be used in the analysis.

  1. Multi Instance Learning
  2. KCF
  3. CSRT
  4. GOTURN
  5. DaSiamRPN
  6. Nano
  7. Vit
Rect Hue

Specifies the hue of the rectangle displayed in Object Selection and View Result.

Save EXO Options
  • As English EXO? : Output exo for English patched exedit.
  • As Sub-filter/部分フィルター? : Output as a sub filter.
  • Invert Position : Reverse the position of the tracking result.
Video Effect Options
  • Quick Blur : Direct blur on AviUtl Window according to tracking result.
  • Easy Privacy : Blur all detected faces(real face only), No tracking is needed. Works well on frontal face, poor on profile face.

Pre-track:BGSubtraction

Common Parameters

  • Range : Use no. of frames before and after current frame for analysis.[30]
  • Shadow : 1= Extract shadow [0]

MOG2-Only

  • NMix : Number of Gaussian mixtures [5]
  • BG% : Background ratio [70%]

KNN-Only

  • d2T : Threshold on the squared distance between the pixel and the sample to decide whether a pixel is close to that sample.

Building From Source

  1. Run git clone https://github.com/Mr-Ojii/MotionTracking_MK-II_Plus.git
  2. Build your own OpenCV 4.9.0 STATIC (Both Debug and Release builds)
  3. Generate VS project file from src/CMakeLists.txt
  4. Build with Visual Studio

Bug Report

About

AviUtl object tracking plugin based on LKT/optical flow. Use OpenCV 4.9.0 or newer.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 96.6%
  • CMake 3.4%