From b5936b499abc94c0efffbcc99b5698574b59d860 Mon Sep 17 00:00:00 2001
From: Joseph Redmon <pjreddie@gmail.com>
Date: Sat, 05 Sep 2015 00:52:44 +0000
Subject: [PATCH] lots of stuff
---
src/coco.c | 37 +++++++++++++++++++++++++++++--------
1 files changed, 29 insertions(+), 8 deletions(-)
diff --git a/src/coco.c b/src/coco.c
index 62ae429..87f3dca 100644
--- a/src/coco.c
+++ b/src/coco.c
@@ -62,7 +62,7 @@
}
printf("Learning Rate: %g, Momentum: %g, Decay: %g\n", net.learning_rate, net.momentum, net.decay);
int imgs = 128;
- int i = net.seen/imgs;
+ int i = *net.seen/imgs;
data train, buffer;
@@ -107,7 +107,6 @@
time=clock();
float loss = train_network(net, train);
- net.seen += imgs;
if (avg_loss < 0) avg_loss = loss;
avg_loss = avg_loss*.9 + loss*.1;
@@ -253,8 +252,9 @@
int total = 0;
int correct = 0;
float avg_iou = 0;
- int nms = 0;
+ int nms = 1;
int proposals = 0;
+ int save = 1;
for (i = 0; i < N; ++i) {
char *path = paths[i];
@@ -277,6 +277,27 @@
for(k = 0; k < num_boxes*num_boxes*num; ++k){
if(probs[k][0] > thresh){
++proposals;
+ if(save){
+ char buff[256];
+ sprintf(buff, "/data/extracted/nms_preds/%d", proposals);
+ int dx = (boxes[k].x - boxes[k].w/2) * orig.w;
+ int dy = (boxes[k].y - boxes[k].h/2) * orig.h;
+ int w = boxes[k].w * orig.w;
+ int h = boxes[k].h * orig.h;
+ image cropped = crop_image(orig, dx, dy, w, h);
+ image sized = resize_image(cropped, 224, 224);
+#ifdef OPENCV
+ save_image_jpg(sized, buff);
+#endif
+ free_image(sized);
+ free_image(cropped);
+ sprintf(buff, "/data/extracted/nms_pred_boxes/%d.txt", proposals);
+ char *im_id = basecfg(path);
+ FILE *fp = fopen(buff, "w");
+ fprintf(fp, "%s %d %d %d %d\n", im_id, dx, dy, dx+w, dy+h);
+ fclose(fp);
+ free(im_id);
+ }
}
}
for (j = 0; j < num_labels; ++j) {
@@ -332,7 +353,7 @@
int k;
int count = 0;
- float iou_thresh = .1;
+ float iou_thresh = .3;
for (i = 0; i < N; ++i) {
fprintf(stderr, "%5d %5d\n", i, count);
@@ -361,7 +382,7 @@
if (iou > iou_thresh){
if (!overlaps) {
char buff[256];
- sprintf(buff, "/home/pjreddie/extracted/labels/%d.txt", count);
+ sprintf(buff, "/data/extracted/labels/%d.txt", count);
label = fopen(buff, "w");
overlaps = 1;
}
@@ -370,16 +391,16 @@
}
if (overlaps) {
char buff[256];
- sprintf(buff, "/home/pjreddie/extracted/imgs/%d", count++);
+ sprintf(buff, "/data/extracted/imgs/%d", count++);
int dx = (boxes[k].x - boxes[k].w/2) * orig.w;
int dy = (boxes[k].y - boxes[k].h/2) * orig.h;
int w = boxes[k].w * orig.w;
int h = boxes[k].h * orig.h;
image cropped = crop_image(orig, dx, dy, w, h);
image sized = resize_image(cropped, 224, 224);
- #ifdef OPENCV
+#ifdef OPENCV
save_image_jpg(sized, buff);
- #endif
+#endif
free_image(sized);
free_image(cropped);
fclose(label);
--
Gitblit v1.10.0