Warning: session_start(): open(/var/lib/php/sessions/sess_0i94h02hq0t3pv78gc4hevoues, 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
// uses only one prototype image
// goes through different granularities at once
cmodule ImageRecogSpike {
S prototypeImageID = #1102884;
S inputImageID = #1102883;
transient L widths = ll(32, 64, 128);
transient new L integralImages;
transient BWIntegralImage baseImage;
transient JTabbedPane tabs = jTabbedPane();
/*class OneLevel {
L rectQueue;
public bool step() {
if (nempty(rectQueue))
ret true with tryRect(popFirst(rectQueue));
if (segmenterStream.hasNext()) {
Segmenter seg = segmenterStream.next();
if (seg == null) true;
L rects = seg.get(inputImage);
addAll(rectQueue, rects);
if (verbose) print("Segmenter " + seg + " returned: " + rects);
true;
}
false;
}
// returns true if rect not seen before
bool tryRect(Rect r) {
r = rectSetHeightToWidth(r); // square it
if (!rectsTried.add(r)) false; // seen
BufferedImage board = clipBufferedImage(inputImage, r);
S fen, double score = unpair chessOCR_recognizeBoard_FENAndScore(board, pieceRecognizer);
if (verbose) print("Score " + score + " for rect: " + r);
best.put(pair(r, fen), score);
true;
}*/
start-thread {
if (baseImage == null)
baseImage = BWIntegralImage(loadImage2(inputImageID));
for (int w : widths) {
IBWIntegralImage ii = scaledIBWIntegralImage(baseImage, w);
integralImages.add(
addTab(tabs, "w=" + w, jImageSurface(iBWIntegralImageToBWImage(ii)));
}
}
visual tabs;
}