Vector Blur
Brief Description
Applies motion-blur to an image using Motion Vectors
Controls
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 |