@@ -99,7 +99,7 @@ static void thinningIteration(Mat &img, Mat &marker, const uint8_t* const lut) {
99
99
// Parallelized iteration over pixels excluding the boundary
100
100
parallel_for_ (Range (1 , rows - 1 ), [&](const Range& range) {
101
101
for (int i = range.start ; i < range.end ; i++) {
102
- uchar* imgRow = img.ptr (i);
102
+ const uchar* imgRow = img.ptr (i);
103
103
uchar* markerRow = marker.ptr (i);
104
104
for (int j = 1 ; j < cols - 1 ; j++) {
105
105
if (imgRow[j]) {
@@ -119,7 +119,6 @@ static void thinningIteration(Mat &img, Mat &marker, const uint8_t* const lut) {
119
119
}
120
120
});
121
121
122
- // Bitwise AND and reset marker for the next iteration
123
122
img &= marker;
124
123
}
125
124
@@ -132,7 +131,8 @@ void thinning(InputArray input, OutputArray output, int thinningType){
132
131
Mat processed = input_ / 255 ;
133
132
Mat prev = processed.clone ();
134
133
135
- Mat marker,marker_inner = processed (Rect (1 , 1 , processed.cols - 2 , processed.rows - 2 ));
134
+ Mat marker;
135
+ Mat marker_inner = processed (Rect (1 , 1 , processed.cols - 2 , processed.rows - 2 ));
136
136
copyMakeBorder (marker_inner, marker, 1 , 1 , 1 , 1 , BORDER_ISOLATED | BORDER_CONSTANT, Scalar (255 ));
137
137
138
138
const auto lutIter0 = (thinningType == THINNING_GUOHALL) ? lut_guo_iter0 : lut_zhang_iter0;
0 commit comments