org.apache.sysds.runtime.matrix.data

## Class LibMatrixDNNIm2Col

- java.lang.Object
- - org.apache.sysds.runtime.matrix.data.LibMatrixDNNIm2Col

    public class LibMatrixDNNIm2Col
    extends Object

This class contains the different implementation of im2col operation

### Constructor Summary

Constructors
Constructor and Description
`LibMatrixDNNIm2Col()`

### Method Summary

All Methods Static Methods Concrete Methods
`static void` `col2imOverSingleImage(int outputN, MatrixBlock input, DnnParameters params)`
`static void` `im2col(MatrixBlock in, MatrixBlock out, int r, DnnParameters params, boolean trans)`
`static void` `im2col(MatrixBlock in, MatrixBlock out, int r, int C, int R, int S, int H, int W, int P, int Q, int stride_h, int stride_w, int pad_h, int pad_w, boolean trans)`
`static void` `im2colDense(double[] in, double[] out, int r, int C, int R, int S, int H, int W, int P, int Q, int stride_h, int stride_w, int pad_h, int pad_w, boolean trans)`
`static void` `im2colDenseStride1Pad0(double[] in, double[] out, int ai, int C, int R, int S, int H, int W, int P, int Q)`
`static void` `im2colSparse(MatrixBlock in, MatrixBlock out, int r, int C, int R, int S, int H, int W, int P, int Q, int stride_h, int stride_w, int pad_h, int pad_w, boolean trans)`
`static void` `preallocateSparseOutput(MatrixBlock in, MatrixBlock out)`

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### LibMatrixDNNIm2Col

    public LibMatrixDNNIm2Col()

### Method Detail

#### im2col

    public static void im2col(MatrixBlock in,
                              MatrixBlock out,
                              int r,
                              DnnParameters params,
                              boolean trans)

#### im2col

    public static void im2col(MatrixBlock in,
                              MatrixBlock out,
                              int r,
                              int C,
                              int R,
                              int S,
                              int H,
                              int W,
                              int P,
                              int Q,
                              int stride_h,
                              int stride_w,
                              int pad_h,
                              int pad_w,
                              boolean trans)

#### im2colDenseStride1Pad0

    public static void im2colDenseStride1Pad0(double[] in,
                                              double[] out,
                                              int ai,
                                              int C,
                                              int R,
                                              int S,
                                              int H,
                                              int W,
                                              int P,
                                              int Q)

#### im2colDense

    public static void im2colDense(double[] in,
                                   double[] out,
                                   int r,
                                   int C,
                                   int R,
                                   int S,
                                   int H,
                                   int W,
                                   int P,
                                   int Q,
                                   int stride_h,
                                   int stride_w,
                                   int pad_h,
                                   int pad_w,
                                   boolean trans)

#### im2colSparse

    public static void im2colSparse(MatrixBlock in,
                                    MatrixBlock out,
                                    int r,
                                    int C,
                                    int R,
                                    int S,
                                    int H,
                                    int W,
                                    int P,
                                    int Q,
                                    int stride_h,
                                    int stride_w,
                                    int pad_h,
                                    int pad_w,
                                    boolean trans)

#### col2imOverSingleImage

    public static void col2imOverSingleImage(int outputN,
                                             MatrixBlock input,
                                             DnnParameters params)

#### preallocateSparseOutput

    public static void preallocateSparseOutput(MatrixBlock in,
                                               MatrixBlock out)