From dbdd31ee211fe8b1ac7e93ceadf7b34b8d304f34 Mon Sep 17 00:00:00 2001
From: Roland Singer <roland.singer@desertbit.com>
Date: Wed, 22 Aug 2018 11:56:41 +0000
Subject: [PATCH] updated README to include information about learning rate adjustment for multiple GPUs

---
 src/data.h |   41 +++++++++++++++++++++++++++++++++++------
 1 files changed, 35 insertions(+), 6 deletions(-)

diff --git a/src/data.h b/src/data.h
index 0ebdfc3..f7ab585 100644
--- a/src/data.h
+++ b/src/data.h
@@ -2,11 +2,14 @@
 #define DATA_H
 #include <pthread.h>
 
+#if defined(_MSC_VER) && _MSC_VER < 1900
+	#define inline __inline
+#endif
+
 #include "matrix.h"
 #include "list.h"
 #include "image.h"
-
-extern unsigned int data_seed;
+#include "tree.h"
 
 static inline float distance_from_edge(int x, int max)
 {
@@ -24,13 +27,16 @@
     matrix X;
     matrix y;
     int shallow;
+    int *num_boxes;
+    box **boxes;
 } data;
 
 typedef enum {
-    CLASSIFICATION_DATA, DETECTION_DATA, CAPTCHA_DATA, REGION_DATA, IMAGE_DATA, COMPARE_DATA, WRITING_DATA, SWAG_DATA
+    CLASSIFICATION_DATA, DETECTION_DATA, CAPTCHA_DATA, REGION_DATA, IMAGE_DATA, LETTERBOX_DATA, COMPARE_DATA, WRITING_DATA, SWAG_DATA, TAG_DATA, OLD_CLASSIFICATION_DATA, STUDY_DATA, DET_DATA, SUPER_DATA
 } data_type;
 
 typedef struct load_args{
+    int threads;
     char **paths;
     char *path;
     int n;
@@ -38,18 +44,29 @@
     char **labels;
     int h;
     int w;
-    int out_w;
+	int c; // color depth
+	int out_w;
     int out_h;
     int nh;
     int nw;
     int num_boxes;
+    int min, max, size;
     int classes;
     int background;
+    int scale;
+	int small_object;
     float jitter;
+    int flip;
+    float angle;
+    float aspect;
+    float saturation;
+    float exposure;
+    float hue;
     data *d;
     image *im;
     image *resized;
     data_type type;
+    tree *hierarchy;
 } load_args;
 
 typedef struct{
@@ -60,13 +77,20 @@
 
 void free_data(data d);
 
+pthread_t load_data(load_args args);
+
 pthread_t load_data_in_thread(load_args args);
 
 void print_letters(float *pred, int n);
 data load_data_captcha(char **paths, int n, int m, int k, int w, int h);
 data load_data_captcha_encode(char **paths, int n, int m, int w, int h);
-data load_data(char **paths, int n, int m, char **labels, int k, int w, int h);
-data load_data_detection(int n, char **paths, int m, int classes, int w, int h, int num_boxes, int background);
+data load_data_old(char **paths, int n, int m, char **labels, int k, int w, int h);
+data load_data_detection(int n, char **paths, int m, int w, int h, int c, int boxes, int classes, int use_flip, float jitter, float hue, float saturation, float exposure, int small_object);
+data load_data_tag(char **paths, int n, int m, int k, int use_flip, int min, int max, int size, float angle, float aspect, float hue, float saturation, float exposure);
+matrix load_image_augment_paths(char **paths, int n, int use_flip, int min, int max, int size, float angle, float aspect, float hue, float saturation, float exposure);
+data load_data_super(char **paths, int n, int m, int w, int h, int scale);
+data load_data_augment(char **paths, int n, int m, char **labels, int k, tree *hierarchy, int use_flip, int min, int max, int size, float angle, float aspect, float hue, float saturation, float exposure);
+data load_go(char *filename);
 
 box_label *read_boxes(char *filename, int *n);
 data load_cifar10_data(char *filename);
@@ -76,7 +100,10 @@
 
 list *get_paths(char *filename);
 char **get_labels(char *filename);
+char **get_labels_custom(char *filename, int *size);
 void get_random_batch(data d, int n, float *X, float *y);
+data get_data_part(data d, int part, int total);
+data get_random_data(data d, int num);
 void get_next_batch(data d, int n, int offset, float *X, float *y);
 data load_categorical_data_csv(char *filename, int target, int k);
 void normalize_data_rows(data d);
@@ -85,5 +112,7 @@
 void randomize_data(data d);
 data *split_data(data d, int part, int total);
 data concat_data(data d1, data d2);
+data concat_datas(data *d, int n);
+void fill_truth(char *path, char **labels, int k, float *truth);
 
 #endif

--
Gitblit v1.10.0