AlexeyAB
2018-06-15 e066cad1ec730cea0fa76348e34c15ff637c6975
src/blas.c
@@ -291,3 +291,19 @@
    }
}
void upsample_cpu(float *in, int w, int h, int c, int batch, int stride, int forward, float scale, float *out)
{
   int i, j, k, b;
   for (b = 0; b < batch; ++b) {
      for (k = 0; k < c; ++k) {
         for (j = 0; j < h*stride; ++j) {
            for (i = 0; i < w*stride; ++i) {
               int in_index = b*w*h*c + k*w*h + (j / stride)*w + i / stride;
               int out_index = b*w*h*c*stride*stride + k*w*h*stride*stride + j*w*stride + i;
               if (forward) out[out_index] = scale*in[in_index];
               else in[in_index] += scale*out[out_index];
            }
         }
      }
   }
}