digiKam
|
Public Member Functions | |
int | calcHaar (ImageData *const imageData, SignatureData *const sigData) |
Calculator () | |
void | transform (ImageData *const data) |
~Calculator () | |
|
explicit |
Digikam::Haar::Calculator::~Calculator | ( | ) |
int Digikam::Haar::Calculator::calcHaar | ( | ImageData *const | data, |
SignatureData *const | sigData | ||
) |
Determines a total of NUM_COEFS positions in the image that have the largest magnitude (absolute value) in color value. Returns linearized coordinates in sig1, sig2, and sig3. avgl are the [0,0] values. The order of occurrence of the coordinates in sig doesn't matter. Complexity is 3 x NUM_PIXELS^2 x 2log(NUM_COEFS).
References Digikam::Haar::SignatureData::avg, Digikam::Haar::ImageData::data1, Digikam::Haar::ImageData::data2, Digikam::Haar::ImageData::data3, and Digikam::Haar::SignatureData::sig.
Referenced by Digikam::HaarIface::bestMatchesForImageWithThreshold(), and Digikam::HaarIface::signatureAsText().
void Digikam::Haar::Calculator::transform | ( | ImageData *const | data | ) |
Do the Haar tensorial 2d transform itself. Here input is RGB data [0..255] in Unit arrays. Results are available in a, b, and c. Fully inplace calculation; order of result is interleaved though, but we don't care about that.
References Digikam::Haar::ImageData::data1, Digikam::Haar::ImageData::data2, Digikam::Haar::ImageData::data3, I, and Digikam::Haar::NumberOfPixelsSquared.
Referenced by Digikam::HaarIface::bestMatchesForImageWithThreshold(), and Digikam::HaarIface::signatureAsText().