00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00024
00025 #ifndef QVIP_H
00026 #define QVIP_H
00027
00028 #include <iostream>
00029
00030 #include <qvdefines.h>
00031 #include <QVImage>
00032
00033
00041
00042
00043 void FilterHarrisCornerResponseImage(const QVImage<uChar> &image, QVImage<sFloat> &result, const QPoint &destROIOffset = QPoint(0,0));
00044
00047 void FilterDoG(const QVImage<uChar> &image, QVImage<sFloat> &result);
00048
00052 void SobelCornerResponseImage(const QVImage<sFloat> &image, QVImage<sFloat> &result);
00053
00056 void FilterHessianCornerResponseImage(const QVImage<sFloat> &image, QVImage<sFloat> &result, const QPoint &destROIOffset = QPoint(0,0));
00057
00060 int myFloodFill(QVImage<uChar> &image, uInt x, uInt y, uInt value, uInt minVal, uInt maxVal);
00061
00064 void FilterEqualizeHistogram(const QVImage<uChar,1> &image, QVImage<uChar,1> &equalized, const QPoint &destROIOffset = QPoint(0,0));
00065
00068 void FilterEqualizeHistogram(const QVImage<sFloat,1> &image, QVImage<sFloat,1> &equalized, const QPoint &destROIOffset = QPoint(0,0));
00069
00071 class QVComponentTree;
00072 void FilterPruneComponentTreeSmallRegions(QVImage<uChar> &image, QVComponentTree &componentTree, uInt area);
00073
00074 #include <qvmath/qvvector.h>
00075 #include <QPoint>
00077 void FilterSeparable(const QVImage<sFloat, 1> &image, QVImage<sFloat, 1> &dest,
00078 const QVVector &rowFilter, const QVVector &colFilter, const QPoint &destROIOffset = QPoint(0,0));
00079
00095 void FilterLocalMax(const QVImage<sFloat> &src, QVImage<uChar> &dest, uInt colMaskSize, uInt rowMaskSize, sFloat threshold = 0);
00096
00097 #endif
00098