Align convolutional layer weights separately from origin ones
authordkurt <dmitry.kurtaev+github@gmail.com>
Wed, 28 Jun 2017 14:05:56 +0000 (17:05 +0300)
committerdkurt <dmitry.kurtaev+github@gmail.com>
Wed, 28 Jun 2017 14:05:56 +0000 (17:05 +0300)
modules/dnn/src/layers/convolution_layer.cpp

index edda734..15c6984 100644 (file)
@@ -638,7 +638,7 @@ public:
         {
             // prepare weightsMat where each row is aligned and has enough zero padding on the right to
             // use vectorized (i.e. with intrinsics) loops without tail processing
-            Mat wm = blobs[0].reshape(1, outCn);
+            Mat wm = blobs[0].reshape(1, outCn).clone();
             if( wm.step1() % VEC_ALIGN != 0 )
             {
                 int newcols = (int)alignSize(wm.step1(), VEC_ALIGN);