- for(j = 0; j < h; j++) \
- { \
- in_row = (type*) in_rows[j]; \
- out_row = (type*)out_rows[j]; \
- pattern_row = pattern_image[j]; \
- \
- col_offset = 0; \
- for(k = 0; k < w; k++) \
- { \
- value = pattern_row[k]; \
- if ((direction == 0 && value >= threshold) || \
- (direction == 1 && value <= threshold)) \
- { \
+ if( !direction ) { \
+ for(j = 0; j < h; j++) { \
+ in_row = (type*) in_rows[j]; \
+ out_row = (type*)out_rows[j]; \
+ pattern_row = pattern_image[j]; \
+ \
+ col_offset = 0; \
+ for(k = 0; k < w; k++, col_offset += components ) { \
+ value = pattern_row[k]; \
+ if (value < threshold) continue; \
+ out_row[col_offset] = in_row[col_offset]; \
+ out_row[col_offset + 1] = in_row[col_offset + 1]; \
+ out_row[col_offset + 2] = in_row[col_offset + 2]; \
+ if(components == 4) \
+ out_row[col_offset + 3] = in_row[col_offset + 3]; \
+ } \
+ } \
+ } \
+ else { \
+ for(j = 0; j < h; j++) { \
+ in_row = (type*) in_rows[j]; \
+ out_row = (type*)out_rows[j]; \
+ pattern_row = pattern_image[j]; \
+ \
+ col_offset = 0; \
+ for(k = 0; k < w; k++, col_offset += components ) { \
+ value = pattern_row[k]; \
+ if (value > threshold) continue; \