Class to do block matching.
#include <block_match.h>
List of all members.
Public Member Functions |
| 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.
|
| ~BlockMatcher () |
void | FindBestMatchPel (const int xpos, const int ypos, const CandidateList &cand_list, const MVector &mv_prediction, const int list_start) |
| Find the best matching vector from a list of candidates.
|
void | 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, to sub-pixel accuracy (TBC: merge with FindBestMatch)
|
void | RefineMatchSubp (const int xpos, const int ypos, const MVector &mv_prediction, const float lambda) |
ValueType | GetVar (const MVector &predmv, const MVector &mv) const |
| Get a measure of the difference between a motion vector and a prediction.
|
ValueType | 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.
|
void | SetPrecision (const int n) |
Constructor & Destructor Documentation
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 int |
list_start |
|
) |
| |
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 | Prediction used for each block used to control the variation in the motion vector field. |
list_start | index into the candidate vectors list |
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 |
Get a measure of the difference between a motion vector and a prediction
- Parameters:
-
predmv | the predicting motion vector |
mv | the motion vector |
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
const MvArray& dirac::BlockMatcher::m_mv_array |
|
private |
const PicArray& dirac::BlockMatcher::m_pic_data |
|
private |
int dirac::BlockMatcher::m_precision |
|
private |
const PicArray& dirac::BlockMatcher::m_ref_data |
|
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: