From a79299d317bd47180ea5015e936182766e51b500 Mon Sep 17 00:00:00 2001 From: Joseph Redmon Date: Wed, 10 Jun 2015 00:22:48 -0700 Subject: [PATCH] NIPS demo --- Makefile | 10 +++++++--- src/detection.c | 9 +++++---- src/image.c | 7 ------- 3 files changed, 12 insertions(+), 14 deletions(-) diff --git a/Makefile b/Makefile index bc3b9bf7..1d1fdf2b 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ -GPU=1 -OPENCV=1 +GPU=0 +OPENCV=0 DEBUG=0 ARCH= -arch=sm_52 @@ -42,7 +42,7 @@ endif OBJS = $(addprefix $(OBJDIR), $(OBJ)) DEPS = $(wildcard src/*.h) Makefile -all: $(EXEC) +all: obj $(EXEC) $(EXEC): $(OBJS) $(CC) $(COMMON) $(CFLAGS) $(LDFLAGS) $^ -o $@ @@ -53,6 +53,10 @@ $(OBJDIR)%.o: %.c $(DEPS) $(OBJDIR)%.o: %.cu $(DEPS) $(NVCC) $(ARCH) $(COMMON) --compiler-options "$(CFLAGS)" -c $< -o $@ +obj: + mkdir -p obj + + .PHONY: clean clean: diff --git a/src/detection.c b/src/detection.c index ac93efb3..a3b40cab 100644 --- a/src/detection.c +++ b/src/detection.c @@ -7,16 +7,16 @@ char *class_names[] = {"aeroplane", "bicycle", "bird", "boat", "bottle", "bus", "car", "cat", "chair", "cow", "diningtable", "dog", "horse", "motorbike", "person", "pottedplant", "sheep", "sofa", "train", "tvmonitor"}; -void draw_detection(image im, float *box, int side, int bg, char *label) +void draw_detection(image im, float *box, int side, char *label) { int classes = 20; - int elems = 4+classes+bg; + int elems = 4+classes; int j; int r, c; for(r = 0; r < side; ++r){ for(c = 0; c < side; ++c){ - j = (r*side + c) * elems + bg; + j = (r*side + c) * elems; int class = max_index(box+j, classes); if(box[j+class] > .2){ printf("%f %s\n", box[j+class], class_names[class]); @@ -212,6 +212,7 @@ void test_detection(char *cfgfile, char *weightfile) load_weights(&net, weightfile); } detection_layer layer = get_network_detection_layer(net); + if (!layer.joint) fprintf(stderr, "Detection layer should use joint prediction to draw correctly.\n"); int im_size = 448; set_batch_network(&net, 1); srand(2222222); @@ -227,7 +228,7 @@ void test_detection(char *cfgfile, char *weightfile) time=clock(); float *predictions = network_predict(net, X); printf("%s: Predicted in %f seconds.\n", filename, sec(clock()-time)); - draw_detection(im, predictions, 7, layer.background || layer.objectness, "predictions"); + draw_detection(im, predictions, 7, "predictions"); free_image(im); free_image(sized); #ifdef OPENCV diff --git a/src/image.c b/src/image.c index 45911031..f5c23598 100644 --- a/src/image.c +++ b/src/image.c @@ -577,13 +577,6 @@ image resize_image(image im, int w, int h) void test_resize(char *filename) { image im = load_image(filename, 0,0, 3); - image small = resize_image(im, 65, 63); - image big = resize_image(im, 513, 512); - image crop = crop_image(im, 50, 10, 100, 100); - image crop2 = crop_image(im, -30, -50, 291, 400); - image rot = rotate_image(big, .02); - image rot2 = rotate_image(big, 3.14159265/2.); - image test = rotate_image(im, .6); image gray = grayscale_image(im); image sat2 = copy_image(im);