Blender V4.3
tracking_region_tracker.cc File Reference
#include "MEM_guardedalloc.h"
#include "DNA_defaults.h"
#include "DNA_movieclip_types.h"
#include "BLI_threads.h"
#include "BLI_utildefines.h"
#include "BKE_movieclip.h"
#include "BKE_tracking.h"
#include "IMB_imbuf.hh"
#include "IMB_imbuf_types.hh"
#include "libmv-capi.h"
#include "tracking_private.h"

Go to the source code of this file.

Functions

static void float_rgba_to_gray (const float *rgba, float *gray, int num_pixels, float weight_red, float weight_green, float weight_blue)
 
static void uint8_rgba_to_float_gray (const uchar *rgba, float *gray, int num_pixels, float weight_red, float weight_green, float weight_blue)
 
static floattrack_get_search_floatbuf (ImBuf *ibuf, MovieTrackingTrack *track, MovieTrackingMarker *marker, int *r_width, int *r_height)
 
static ImBuftracking_context_get_frame_ibuf (MovieClip *clip, MovieClipUser *user, int clip_flag, int framenr)
 
static ImBuftracking_context_get_keyframed_ibuf (MovieClip *clip, MovieClipUser *user, int clip_flag, MovieTrackingTrack *track, int curfra, bool backwards, MovieTrackingMarker **r_marker_keyed)
 
static ImBuftracking_context_get_reference_ibuf (MovieClip *clip, MovieClipUser *user, int clip_flag, MovieTrackingTrack *track, int curfra, bool backwards, MovieTrackingMarker **reference_marker)
 
void tracking_configure_tracker (const MovieTrackingTrack *track, float *mask, const bool is_backwards, libmv_TrackRegionOptions *options)
 
static bool configure_and_run_tracker (ImBuf *destination_ibuf, MovieTrackingTrack *track, MovieTrackingMarker *reference_marker, MovieTrackingMarker *marker, float *reference_search_area, int reference_search_area_width, int reference_search_area_height, float *mask, const bool is_backward, double dst_pixel_x[5], double dst_pixel_y[5])
 
static bool refine_marker_reference_frame_get (MovieTrackingTrack *track, MovieTrackingMarker *marker, bool backwards, int *reference_framenr)
 
void BKE_tracking_refine_marker (MovieClip *clip, MovieTrackingTrack *track, MovieTrackingMarker *marker, bool backwards)
 

Detailed Description

This file contains implementation of blender-side region tracker which is used for 2D feature tracking.

Definition in file tracking_region_tracker.cc.

Function Documentation

◆ BKE_tracking_refine_marker()

◆ configure_and_run_tracker()

static bool configure_and_run_tracker ( ImBuf * destination_ibuf,
MovieTrackingTrack * track,
MovieTrackingMarker * reference_marker,
MovieTrackingMarker * marker,
float * reference_search_area,
int reference_search_area_width,
int reference_search_area_height,
float * mask,
const bool is_backward,
double dst_pixel_x[5],
double dst_pixel_y[5] )
static

◆ float_rgba_to_gray()

static void float_rgba_to_gray ( const float * rgba,
float * gray,
int num_pixels,
float weight_red,
float weight_green,
float weight_blue )
static

Convert from float and byte RGBA to gray-scale. Supports different coefficients for RGB.

Definition at line 32 of file tracking_region_tracker.cc.

Referenced by track_get_search_floatbuf().

◆ refine_marker_reference_frame_get()

static bool refine_marker_reference_frame_get ( MovieTrackingTrack * track,
MovieTrackingMarker * marker,
bool backwards,
int * reference_framenr )
static

◆ track_get_search_floatbuf()

static float * track_get_search_floatbuf ( ImBuf * ibuf,
MovieTrackingTrack * track,
MovieTrackingMarker * marker,
int * r_width,
int * r_height )
static

◆ tracking_configure_tracker()

void tracking_configure_tracker ( const MovieTrackingTrack * track,
float * mask,
bool is_backwards,
struct libmv_TrackRegionOptions * options )

◆ tracking_context_get_frame_ibuf()

static ImBuf * tracking_context_get_frame_ibuf ( MovieClip * clip,
MovieClipUser * user,
int clip_flag,
int framenr )
static

◆ tracking_context_get_keyframed_ibuf()

static ImBuf * tracking_context_get_keyframed_ibuf ( MovieClip * clip,
MovieClipUser * user,
int clip_flag,
MovieTrackingTrack * track,
int curfra,
bool backwards,
MovieTrackingMarker ** r_marker_keyed )
static

◆ tracking_context_get_reference_ibuf()

static ImBuf * tracking_context_get_reference_ibuf ( MovieClip * clip,
MovieClipUser * user,
int clip_flag,
MovieTrackingTrack * track,
int curfra,
bool backwards,
MovieTrackingMarker ** reference_marker )
static

◆ uint8_rgba_to_float_gray()

static void uint8_rgba_to_float_gray ( const uchar * rgba,
float * gray,
int num_pixels,
float weight_red,
float weight_green,
float weight_blue )
static

Definition at line 46 of file tracking_region_tracker.cc.

Referenced by track_get_search_floatbuf().