Warning: session_start(): open(/var/lib/php/sessions/sess_uj4bmshhef1j82e7u39htr08et, O_RDWR) failed: No space left on device (28) in /var/www/tb-usercake/models/config.php on line 51
Warning: session_start(): Failed to read session data: files (path: /var/lib/php/sessions) in /var/www/tb-usercake/models/config.php on line 51
!7
p-subst {
autoRestart();
JNavigation nav = jnavigation();
frameIcon(#1101244, showMaximizedFrame(nav));
File dataDir = javaxDataDir("Screen shots for text recognition");
for (final File f : listPNGFiles(dataDir)) {
print(f.getName());
final BufferedImage img = loadBufferedImage(f);
print("Recognizing");
final L lines = ocr_recognizeMultiLine_scored(img);
//lines = [S line : lines | l(getVar(line.text)) > 1];
//pnlStruct(lines);
print("Got " + n2(lines, "line"));
nav.addPage(f.getName(), func -> JComponent {
final new ImageSurface is;
is.specialPurposed = true;
showImageWithSelections(img, is, collect(lines, 'r));
onImageSurfaceHighlightChange(is, voidfunc(Rect r) {
RecognizedText rec = findByField(lines, +r);
setToolTip(is, rec == null ? null : str(rec.text));
});
imageSurfacePopupMenuWhenHighlighted_top(is, voidfunc(JPopupMenu menu, final Rect r) {
addPopupMenuItem(menu, "OK", r {
RecognizedText rec = findByField(lines, +r);
appendToTextFile_uniq(changeExtension(f, ".expected"),
struct(ll(rec.text!, rec.r)));
});
addSeparator(menu);
});
ret jtabs(
"Picture", jscroll(is),
"Raw", jtextarea(pnlStructToString(lines))
);
});
}
}