Skip to content

Vector Blur

Brief Description

Applies motion-blur to an image using Motion Vectors


Parameter / Script Name Type Default Function
Enabled / enabled Boolean On
Red / process_red Boolean On Enable the red channel in output. Otherwise if there's a source the content of the main source is returned instead, else 0
Green / process_green Boolean On Enable the green channel in output. Otherwise if there's a source the content of the main source is returned instead, else 0
Blue / process_blue Boolean On Enable the blue channel in output. Otherwise if there's a source the content of the main source is returned instead, else 0
Alpha / process_alpha Boolean On Enable the alpha channel in output. Otherwise if there's a source the content of the main source is returned instead, else 0
Amount / shutter_frames Float 0.5 Number of frames to accumulate around the current frame. If 0.5, half a frame before and after are accumulated
Motion-Vectors Source / vector_source Choice Generated Select whether to automatically generate motion-vectors
- Generated
- Custom
Custom Motion-Vectors / motion_vectors Image - The motion vectors to use. Vector Blur expects non normalized vectors
Alt. Track Source / track_source Image - If this is set, this is the source used to generate motion vectors instead of the actual modifier source. This is useful if you applied other modifiers before that could disturb motion vectors tracking. A good practise is to set this to the original (denoised) plate.
Motion Estimation / motionEstimation Category -
Algorithm / of_algo Choice Dense Inverse Search
- Dense Inverse Search
- Dual TV L1
- PyrLK
- Robust Local
- Farneback
Finest Scale / of_dis_finest_scale Float 1 The finest level of the Gaussian pyramid on which the flow is computed (zero level corresponds to the original image resolution). The final flow is obtained by bilinear upscaling.
Patch Size / of_dis_patch_size Float 8 Size of an image patch for matching (in pixels). Normally, default 8x8 patches work well enough in most cases.
Patch Stride / of_dis_patch_stride Float 3 Stride between neighbor patches. Must be less than patch size. Lower values correspond to higher flow quality.
Descent Num. Iterations / of_dis_gradient_descent_iters Float 25 Maximum number of gradient descent iterations in the patch inverse search stage. Higher values may improve quality in some cases.
Refinement Num. Iterations / of_dis_var_refinement_iters Float 5 Number of fixed point iterations of variational refinement per scale. Set to zero to disable variational refinement completely. Higher values will typically result in more smooth and high-quality flow.
Refinement Smoothness Weight / of_dis_var_refinement_alpha Float 20 Weight of the smoothness term
Refinement Gradient Constancy / of_dis_var_refinement_gamma Float 10 Weight of the gradient constancy term
Refinement Color Constancy / of_dis_var_refinement_delta Float 5 Weight of the color constancy term
Robust To Illumination Changes / of_dis_use_mean_propagation Boolean On Whether to use mean-normalization of patches when computing patch distance. It is turned on by default as it typically provides a noticeable quality boost because of increased robustness to illumination variations. Turn it off if you are certain that your sequence doesn't contain any changes in illumination.
Spatial Propagation / of_dis_use_spatial_propagation Boolean On Whether to use spatial propagation of good optical flow vectors. This option is turned on by default, as it tends to work better on average and can sometimes help recover from major errors introduced by the coarse-to-fine scheme employed. Turning this option off can make the output flow field a bit smoother
Time Step (Tau) / of_dualtvl1_tau Float 0.25 Time step of the numerical scheme
Attachment Weight / of_dualtvl1_lambda Float 0.15 Weight parameter for the data term, attachment parameter. This is the most relevant parameter, which determines the smoothness of the output. The smaller this parameter is, the smoother the solutions we obtain. It depends on the range of motions of the images, so its value should be adapted to each image sequence.
Tightness Weight / of_dualtvl1_theta Float 0.15 Link between the attachment and the regularization terms. In theory, it should have a small value in order to maintain both parts in correspondence. The method is stable for a large range of values of this parameter.
Pyramide Size / of_dualtvl1_nscales Float 5 Number of scales used to create the pyramid of images
Num. Warps / of_dualtvl1_warps Float 5 Number of warpings per scale. This ensures the stability of the method. The higher it is, the more accurate it is, but slower
Error Tolerance / of_dualtvl1_epsilon Float 0.01 Stopping criterion threshold used in the numerical scheme, which is a trade-off between precision and running time. A small value will yield more accurate solutions at the expense of a slower convergence.
Inner Iterations / of_dualtvl1_inner_iter Float 30 Iterations number used when filtering outliers
Outer Iterations / of_dualtvl1_outter_iter Float 10 Number of iterations used in the numerical scheme
Scale Step / of_dualtvl1_scale_step Float 0.8 Step between pyramid scales
Median Filter Size / of_dualtvl1_median_filter_size Float 5 Size of the median filter kernel (1 = no filter). Must be 1, 3 or 5
Grid Step / of_pyrlk_grid_step Float 8
Nearest Neightboors Matches / of_pyrlk_k Float 128
Preserve Details / of_pyrlk_sigma Float 0.05
Smooth Filter / of_pyrlk_use_post_proc Boolean On
Smooth Amount / of_pyrlk_fgs_lambda Float 500
Smooth Sigma / of_pyrlk_fgs_sigma Float 1.5
Use Cross-Segmentation / of_rlof_use_cross_segmentation Boolean On When enabled, use an adaptative support region obtained by cross-based segmentation to improve the accuracy at motion boundaries
Use Bilinear Solver / of_rlof_bilinear_solver Boolean On When checked, use an optimized iterative refinement based on bilinear solutions
Use M-estimator / of_rlof_use_mestimator Boolean Off When checked, enables the M-estimator which may improve accuracy at the cost of a longer runtime
Small Win Size / of_rlof_small_win_size Float 9 Minimal window size of the support region when Use Cross-Segmentation is enabled
Large Win Size / of_rlof_large_win_size Float 21 Maximal window size of the support region. The smaller the window size, the slower is the runtime but the more sensitive to noise it is
Segmentation Similarity Threshold / of_rlof_cross_segmentation_thr Float 25 Color similarity threshold used when Cross-Segmentation is enabled
Pyramid Size / of_rlof_max_level Float 4 Maximal number of pyramid level used. The larger this value is, the more likely it is to obtain accurate solutions for long-range motions. The runtime is linear related to this parameter.
Use Illumination Model / of_rlof_use_illum_model Boolean On Makes the estimation more robust against illumination changes by using another illumination model. The computational complexity is increased when using this method.
Use Global Motion Prior / of_rlof_use_global_motion_prior Boolean On Use a global motion initialisation to more accurately represent long-range motion. The computational complexity is slightly increased by enabling this mode
Num. Refinement Iterations / of_rlof_max_iterations Float 30 Number of refinement iterations. Lower values can reduce runtime but also accuracy
Global Motion Threshold / of_rlof_global_motion_ransac_thr Float 10 This controls the threshold of valid tracked pixels used by the Global Motion Prior
Interpolation / of_rlof_interp Choice Edge-Preserving Which interpolation method used to compute the dense flow field
- Geodesic
- Edge-Preserving
- Robust
Superpixel Algo / of_rlof_ric_slic_type Choice Segment Controls the superpixel algorithm used by the Robust Interpolation method
- Segment
- Optimized Segment
- Manifolds
Confidence Threshold / of_rlof_forward_backward_thr Float 1 Threshold for the forward/backward confidence check. If larger than threshold, the motion vector will not be used when doing interpolation
Grid Step / of_rlof_grid_step Float 6 Size of the grid to spawn motion vectors. Some vectors will be removed due to the forward/backward threshold
Edge Aware Nearest-Neighboors / of_rlof_epic_k Float 128 Number of nearest neigghbor matches considered when fitting a locally affine model. Usually should be around 128. Lower values would make interpolation faster
Preserve Details / of_rlof_epic_sigma Float 0.05 Defines how fast the weights decrease in the locally-weighted affine fitting. Higher values can help preserve fine details and lower values help get rid of noise
Geodesic Distance Weight / of_rlof_epic_lambda Float 999 Weight of the edge-aware term in the geodesic distance
Superpixel Size / of_rlof_ric_sp_size Float 15 Size of superpixels for the RIC Interpolation mode
Smooth Filter / of_rlof_use_post_proc Boolean On Enable a global smoothing pass on the flow
Smooth Amount / of_rlof_fgs_lambda Float 500 Amount of regularization applied by the global smooth filter
Smooth Sigma Color / of_rlof_fgs_sigma Float 1.5 Amount of smoothing applied to colors, similar to a bilinear filter
Use Refinement / of_rlof_use_variational_refinement Boolean Off Enable variational refinement of the flow field
Pyramid Num Levels / of_farneback_num_levels Float 5 The number of mipmap levels used to estimate the optical flow
Levels Scale / of_farneback_pyr_scale Float 0.5 The downscale factor between each pyramid level
Window Size / of_farneback_win_size Float 13 Averaging window size; larger values increase the algorithm robustness to imageoise and give more chances for fast motion detection, but yield more blurred motion field.
Iterations / of_farneback_num_iters Float 10 Solver number of iterations
Neighboorhood Size / of_farneback_polyn Float 5 Size of the pixel neighborhood used to solve for each pixel. Larger values mean that the image will be approximated with smoother surfaces, yielding more robust algorithm and more blurred motion field. Typically this value should be 5 or 7
Gaussian Sigma / of_farneback_poly_sigma Float 1.1 Standard deviation of the Gaussian that is used to smooth derivatives. for Neighboorhood Size at 5, you can set Gaussian Sigma to 1.1, for Neighboorhood Size at 7, a good value would be 1.5.
Use Gaussian / of_farneback_use_gaussian Boolean Off Uses a Gaussian filter of Window Size instead of a box filter of the same size for optical flow estimation. This options gives more accurate flow, at the cost of lower speed. The Window Size for a Gaussian window should be set to a larger value to achieve the same level of robustness as the box filter.
Invert Vectors / invert_mv Boolean Off When checked, motion vectors are inverted
Motion Vectors Blur / mv_blur Float 0 Blur applied to the motion vectors to smooth the motion details
Interpolation Type / interp_type Choice Bezier Controls whether the motion blur is accumulated along motion vectors as lines or as bezier curves
- Line
- Bezier
Max Distance / max_distance Float 0 Clamp vectors so that the accumulated path is no longer than this distance. A value of 0 disables clamping
Sample Density / sample_density Float 1 Spacing between samples used to render motion blur. Lower values means higher quality but maybe slightly longer to render.
Mask / mask Image -
Mix / mix_with_source Float 1 Dissolves between the original image at 0 and the image with the effect applied at 1