imgproc(resize): fix resizeNNInvoker handling of generic pixel size
authorAlexander Alekhin <alexander.a.alekhin@gmail.com>
Sun, 29 Mar 2020 02:08:27 +0000 (02:08 +0000)
committerAlexander Alekhin <alexander.a.alekhin@gmail.com>
Sun, 29 Mar 2020 02:41:41 +0000 (02:41 +0000)
modules/imgproc/src/resize.cpp
modules/imgproc/test/test_imgwarp.cpp

index 43458cc..cd039fe 100644 (file)
@@ -1043,10 +1043,9 @@ public:
             default:
                 for( x = 0; x < dsize.width; x++, D += pix_size )
                 {
-                    const int* _tS = (const int*)(S + x_ofs[x]);
-                    int* _tD = (int*)D;
-                    for( int k = 0; k < pix_size4; k++ )
-                        _tD[k] = _tS[k];
+                    const uchar* _tS = S + x_ofs[x];
+                    for (int k = 0; k < pix_size; k++)
+                        D[k] = _tS[k];
                 }
             }
         }
index b100442..ffd5ecc 100644 (file)
@@ -1721,7 +1721,7 @@ TEST(Resize, lanczos4_regression_16192)
     EXPECT_EQ(cvtest::norm(dst, expected, NORM_INF), 0) << dst(Rect(0,0,8,8));
 }
 
-TEST(Resize, DISABLED_nearest_regression_15075)  // reverted https://github.com/opencv/opencv/pull/16497
+TEST(Resize, nearest_regression_15075)
 {
     const int C = 5;
     const int i1 = 5, j1 = 5;