1 #ifndef JUNCTIONDETECTOR_H
2 #define JUNCTIONDETECTOR_H
12 #define MAX_RECURSIVE_STEPS 1
13 #define MIN_EIGENVALUE_VALUE 0.1f
36 static void detectJunctions(
const QImage &image,
37 const QImage &cannyEdgeImage,
38 const QImage &gradientImage,
39 QImage &junctionImage,
40 QImage &outputJunctionImage);
50 static void detectXJunctions(
52 QImage &junctionImage,
53 QImage &outputXJunctionImage,
54 std::vector<std::vector<float>> &luminances);
67 static void calculateColorsignature(
68 const vector<QVector3D> &imagePixels,
71 static void recursiveSplit(
72 const vector<QVector3D> &imagePixels,
73 const QMatrix3x3 &R,
const QVector3D &m,
74 vector<ColorSignature> &colorSignatures);
76 static QMatrix3x3 multiplyVectors(
78 const QVector3D *vecT);
80 static void calcCubicEquation(
84 static void eigenvectorSolver(
89 static int computeRank(QMatrix3x3 M);
91 static void getComplement1 (
96 static void getComplement2 (
101 static bool colorSignatureSortFunction(
105 static void growRegion(
106 const int &seedX,
const int &seedY,
108 const QColor &initialColor,
111 static float colorDiff(
112 const QColor &color1,
113 const QColor &color2);
115 static unsigned int recursiveDepth;
116 static const QVector2D normalizedVector;