Debuggign
Signed-off-by: James Ketrenos <james_gitlab@ketrenos.com>
This commit is contained in:
parent
0ed48fd7f7
commit
55ea7ed515
@ -18,7 +18,7 @@ typedef struct Face {
|
|||||||
long double descriptor[128];
|
long double descriptor[128];
|
||||||
long int clusterId;
|
long int clusterId;
|
||||||
ClusterTypes clusterType;
|
ClusterTypes clusterType;
|
||||||
long double *distances;
|
double *distances;
|
||||||
} Face;
|
} Face;
|
||||||
|
|
||||||
typedef struct FaceLink {
|
typedef struct FaceLink {
|
||||||
@ -256,7 +256,7 @@ int main(int argc, char *argv[]) {
|
|||||||
memset(pFaces[i].distances, 0, sizeof(*pFaces[i].distances) * entries);
|
memset(pFaces[i].distances, 0, sizeof(*pFaces[i].distances) * entries);
|
||||||
}
|
}
|
||||||
|
|
||||||
entries = 0;
|
long int count = 0;
|
||||||
for (i = 0; i < 100; i++) {
|
for (i = 0; i < 100; i++) {
|
||||||
sprintf(pathBuf, "%s/face-data/%ld", argv[1], i);
|
sprintf(pathBuf, "%s/face-data/%ld", argv[1], i);
|
||||||
DIR *faceDir = opendir(pathBuf);
|
DIR *faceDir = opendir(pathBuf);
|
||||||
@ -267,7 +267,7 @@ int main(int argc, char *argv[]) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
struct dirent *ent;
|
struct dirent *ent;
|
||||||
while ((ent = readdir(faceDir)) != NULL) {
|
while (count < entries && (ent = readdir(faceDir)) != NULL) {
|
||||||
if (strstr(ent->d_name, ".json") == NULL) {
|
if (strstr(ent->d_name, ".json") == NULL) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -281,13 +281,13 @@ int main(int argc, char *argv[]) {
|
|||||||
char path[1028*2];
|
char path[1028*2];
|
||||||
sprintf(path, "%s/%s", pathBuf, ent->d_name);
|
sprintf(path, "%s/%s", pathBuf, ent->d_name);
|
||||||
maxId = maxId > id ? maxId : id;
|
maxId = maxId > id ? maxId : id;
|
||||||
if (!readFaceDescriptor(&pFaces[entries], id, path)) {
|
if (!readFaceDescriptor(&pFaces[count], id, path)) {
|
||||||
fprintf(stderr, "Unable to read %s.\n", path);
|
fprintf(stderr, "Unable to read %s.\n", path);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
entries++;
|
count++;
|
||||||
if (entries % 1000 == 0) {
|
if (count % 1000 == 0) {
|
||||||
fprintf(stderr, "...read %ld...\n", entries);
|
fprintf(stderr, "...read %ld...\n", count);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
closedir(faceDir);
|
closedir(faceDir);
|
||||||
@ -301,12 +301,12 @@ int main(int argc, char *argv[]) {
|
|||||||
for (long j = 0; j < entries; j++) {
|
for (long j = 0; j < entries; j++) {
|
||||||
Face *pTarget = &pFaces[j];
|
Face *pTarget = &pFaces[j];
|
||||||
if (i == j) {
|
if (i == j) {
|
||||||
pLink->distances[i] = 0.0L;
|
pLink->distances[i] = 0.0;
|
||||||
pTarget->distances[j] = 0.0L;
|
pTarget->distances[j] = 0.0;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pLink->distances[j] != 0.0L) {
|
if (pLink->distances[j] != 0.0) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -317,7 +317,7 @@ int main(int argc, char *argv[]) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fprintf(stderr, "Average distance: %Lf\n", (long double)1. * total / (entries * entries));
|
fprintf(stderr, "Average distance: %Lf\n", 1. * total / (entries * entries));
|
||||||
|
|
||||||
long int clusters = DBSCAN(pFaces, entries, 0.44L, 2);
|
long int clusters = DBSCAN(pFaces, entries, 0.44L, 2);
|
||||||
long int undefined = 0, outlier = 0, core = 0, reachable = 0;
|
long int undefined = 0, outlier = 0, core = 0, reachable = 0;
|
||||||
@ -401,12 +401,12 @@ int main(int argc, char *argv[]) {
|
|||||||
for (long j = 0; j < entries; j++) {
|
for (long j = 0; j < entries; j++) {
|
||||||
Face *pTarget = &pFaces[j];
|
Face *pTarget = &pFaces[j];
|
||||||
if (i == j) {
|
if (i == j) {
|
||||||
pLink->distances[i] = 0.0L;
|
pLink->distances[i] = 0.0;
|
||||||
pTarget->distances[j] = 0.0L;
|
pTarget->distances[j] = 0.0;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pLink->distances[j] != 0.0L) {
|
if (pLink->distances[j] != 0.0) {
|
||||||
// continue;
|
// continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -414,7 +414,7 @@ int main(int argc, char *argv[]) {
|
|||||||
pTarget->distances[i] = euclideanDistance(pLink->descriptor, pTarget->descriptor);
|
pTarget->distances[i] = euclideanDistance(pLink->descriptor, pTarget->descriptor);
|
||||||
|
|
||||||
if (pLink->distances[j] < 0.5) {
|
if (pLink->distances[j] < 0.5) {
|
||||||
sprintf(sqlBuf, "INSERT INTO facedistances (face1Id,face2Id,distance) VALUES (%ld,%ld,%Lf);",
|
sprintf(sqlBuf, "INSERT INTO facedistances (face1Id,face2Id,distance) VALUES (%ld,%ld,%lf);",
|
||||||
((pLink->faceId < pTarget->faceId) ? pLink->faceId : pTarget->faceId),
|
((pLink->faceId < pTarget->faceId) ? pLink->faceId : pTarget->faceId),
|
||||||
((pLink->faceId < pTarget->faceId) ? pTarget->faceId : pLink->faceId),
|
((pLink->faceId < pTarget->faceId) ? pTarget->faceId : pLink->faceId),
|
||||||
pLink->distances[j]);
|
pLink->distances[j]);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user