| | |
| | | void forward_reorg_layer(const layer l, network_state state) |
| | | { |
| | | if(l.reverse){ |
| | | reorg_cpu(state.input, l.w, l.h, l.c, l.batch, l.stride, 1, l.output); |
| | | }else { |
| | | reorg_cpu(state.input, l.w, l.h, l.c, l.batch, l.stride, 0, l.output); |
| | | reorg_cpu(state.input, l.out_w, l.out_h, l.out_c, l.batch, l.stride, 1, l.output); |
| | | } |
| | | else { |
| | | reorg_cpu(state.input, l.out_w, l.out_h, l.out_c, l.batch, l.stride, 0, l.output); |
| | | } |
| | | } |
| | | |
| | | void backward_reorg_layer(const layer l, network_state state) |
| | | { |
| | | if(l.reverse){ |
| | | reorg_cpu(l.delta, l.w, l.h, l.c, l.batch, l.stride, 0, state.delta); |
| | | }else{ |
| | | reorg_cpu(l.delta, l.w, l.h, l.c, l.batch, l.stride, 1, state.delta); |
| | | reorg_cpu(l.delta, l.out_w, l.out_h, l.out_c, l.batch, l.stride, 0, state.delta); |
| | | } |
| | | else { |
| | | reorg_cpu(l.delta, l.out_w, l.out_h, l.out_c, l.batch, l.stride, 1, state.delta); |
| | | } |
| | | } |
| | | |
| | |
| | | void forward_reorg_layer_gpu(layer l, network_state state) |
| | | { |
| | | if(l.reverse){ |
| | | reorg_ongpu(state.input, l.w, l.h, l.c, l.batch, l.stride, 1, l.output_gpu); |
| | | }else { |
| | | reorg_ongpu(state.input, l.w, l.h, l.c, l.batch, l.stride, 0, l.output_gpu); |
| | | reorg_ongpu(state.input, l.out_w, l.out_h, l.out_c, l.batch, l.stride, 1, l.output_gpu); |
| | | } |
| | | else { |
| | | reorg_ongpu(state.input, l.out_w, l.out_h, l.out_c, l.batch, l.stride, 0, l.output_gpu); |
| | | } |
| | | } |
| | | |
| | | void backward_reorg_layer_gpu(layer l, network_state state) |
| | | { |
| | | if(l.reverse){ |
| | | reorg_ongpu(l.delta_gpu, l.w, l.h, l.c, l.batch, l.stride, 0, state.delta); |
| | | }else{ |
| | | reorg_ongpu(l.delta_gpu, l.w, l.h, l.c, l.batch, l.stride, 1, state.delta); |
| | | reorg_ongpu(l.delta_gpu, l.out_w, l.out_h, l.out_c, l.batch, l.stride, 0, state.delta); |
| | | //reorg_ongpu(l.delta_gpu, l.w, l.h, l.c, l.batch, l.stride, 0, state.delta); |
| | | } |
| | | else { |
| | | reorg_ongpu(l.delta_gpu, l.out_w, l.out_h, l.out_c, l.batch, l.stride, 1, state.delta); |
| | | //reorg_ongpu(l.delta_gpu, l.w, l.h, l.c, l.batch, l.stride, 1, state.delta); |
| | | } |
| | | } |
| | | #endif |