Joseph Redmon
2015-03-28 cf0300ea55538d4ca139d68cd24b0ee452cce015
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#ifndef MAXPOOL_LAYER_H
#define MAXPOOL_LAYER_H
 
#include "image.h"
#include "params.h"
#include "cuda.h"
 
typedef struct {
    int batch;
    int h,w,c;
    int stride;
    int size;
    int *indexes;
    float *delta;
    float *output;
    #ifdef GPU
    int *indexes_gpu;
    float *output_gpu;
    float *delta_gpu;
    #endif
} maxpool_layer;
 
image get_maxpool_image(maxpool_layer layer);
maxpool_layer *make_maxpool_layer(int batch, int h, int w, int c, int size, int stride);
void resize_maxpool_layer(maxpool_layer *layer, int h, int w);
void forward_maxpool_layer(const maxpool_layer layer, network_state state);
void backward_maxpool_layer(const maxpool_layer layer, network_state state);
 
#ifdef GPU
void forward_maxpool_layer_gpu(maxpool_layer layer, network_state state);
void backward_maxpool_layer_gpu(maxpool_layer layer, network_state state);
#endif
 
#endif