static float horizontalAutoSplit2_threshold = 0.5f; static L horizontalAutoSplit2(BWImage img) { ret horizontalAutoSplit2(img, horizontalAutoSplit2_threshold); } static L horizontalAutoSplit2(BWImage img, float threshold) { int w = img.getWidth(), h = img.getHeight(); float[] f = bwImageColumnMinBrightness(img); new L l; int j = -1; for (int i = 0; i < l(f); i++) if (f[i] < threshold) { // start / continue streak if (j < 0) j = i; } else { if (j >= 0) { // end streak l.add(new Rect(j, 0, i-j, h)); j = -1; } } if (j >= 0) l.add(new Rect(j, 0, w-j, h)); ret l; }