static S ocr_terminalContents() { new L lines; BufferedImage img = shootScreen2(); Rect r = ocr_findTerminalBackground(new RGBImage(img)); if (r == null) null; final BufferedImage terminal = clipBufferedImage(img, r); ocr_terminalInvert1(terminal); LL rects = ocr_makeTerminalGrid(terminal); BWImage bw = new BWImage(terminal); bw = bwAutoContrastAllRects(bw, concatLists(rects), 1f); for (L row : rects) { L chars = ocr_recognizeMultiLine(bw, row); new StringBuilder buf; for (S s : chars) buf.append(empty(s) ? " " : l(s) == 1 ? s : ocr_unknownCharacterPlaceholder()); lines.add(str(buf)); } ret lines(lines); }