Dirac - A Video Codec

Created by the British Broadcasting Corporation.


dirac::BlockMatcher Class Reference

Class to do block matching.

#include <block_match.h>

Collaboration diagram for dirac::BlockMatcher:

Collaboration graph
[legend]
List of all members.

Public Member Functions

Private Attributes


Constructor & Destructor Documentation

dirac::BlockMatcher::BlockMatcher const PicArray ref_data,
const PicArray pic_data,
const OLBParams bparams,
const int  precision,
const MvArray mv_array,
const TwoDArray< MvCostData > &  cost_array
 

Constructor

Parameters:
ref_data the reference picture component
pic_data the picture being matched
bparams the (overlapped) block parameters to be used for the matching
precision the number of bits of precision being used for estimation
mv_array the array of vectors we're going to write into
cost_array the array of costs we're going to write into

dirac::BlockMatcher::~BlockMatcher  ) 
 


Member Function Documentation

void dirac::BlockMatcher::FindBestMatchPel const int  xpos,
const int  ypos,
const CandidateList cand_list,
const MVector mv_prediction,
const float  lambda
 

Find the best matching vector from a list of candidates.

Parameters:
xpos the horizontal location of the block being matched
ypos the vertical location of the block being matched
cand_list the list of candidate vectors
mv_prediction the prediction for the motion vector
lambda the Lagrangian parameter

void dirac::BlockMatcher::FindBestMatchSubp const int  xpos,
const int  ypos,
const CandidateList cand_list,
const MVector mv_prediction,
const float  lambda
 

Find the best matching vector from a list of candidates.

Parameters:
xpos the horizontal location of the block being matched
ypos the vertical location of the block being matched
cand_list the list of candidate vectors
mv_prediction the prediction for the motion vector
lambda the Lagrangian parameter

ValueType dirac::BlockMatcher::GetVar const MVector predmv,
const MVector mv
const
 

Get a measure of the difference between a motion vector and a prediction

Parameters:
predmv the predicting motion vector
mv the motion vector

ValueType dirac::BlockMatcher::GetVarUp const MVector predmv,
const MVector mv
const
 

Get a measure of the difference between a motion vector and a prediction, to 1/8pel accuracy

Parameters:
predmv the predicting motion vector
mv the motion vector

void dirac::BlockMatcher::RefineMatchSubp const int  xpos,
const int  ypos,
const MVector mv_prediction,
const float  lambda
 

void dirac::BlockMatcher::SetPrecision const int  n  )  [inline]
 


Member Data Documentation

OLBParams dirac::BlockMatcher::m_bparams [private]
 

const TwoDArray< MvCostData >& dirac::BlockMatcher::m_cost_array [private]
 

const MvArray& dirac::BlockMatcher::m_mv_array [private]
 

PelBlockDiff dirac::BlockMatcher::m_peldiff [private]
 

const PicArray& dirac::BlockMatcher::m_pic_data [private]
 

int dirac::BlockMatcher::m_precision [private]
 

const PicArray& dirac::BlockMatcher::m_ref_data [private]
 

OneDArray<BlockDiffUp* > dirac::BlockMatcher::m_subpeldiff [private]
 

const int dirac::BlockMatcher::m_var_max [private]
 

const int dirac::BlockMatcher::m_var_max_up [private]
 


The documentation for this class was generated from the following file:

© 2004 British Broadcasting Corporation. Dirac code licensed under the Mozilla Public License (MPL) Version 1.1.
HTML documentation generated by Dimitri van Heesch's excellent Doxygen tool.