Computer vision / Offline experiment
Small Objects in Big Frames
A drone about 40 pixels wide in a 1080 × 1920 phone frame shrinks to about 13 pixels when the whole frame is resized for a detector. This project runs the detector over overlapping crops at full resolution instead. In eight selected field frames, that scan surfaced a candidate next to the drone in every one.
New run, 27 October 2026 / Public weights, public image
Same image, different classification.
I ran the released checkpoint once on the public field image, on a Mac CPU, in two ways: the whole frame resized to 640 pixels, and eight overlapping 640-pixel tiles at full resolution, with overlapping boxes merged. The settings and the reference box around the drone were fixed before the run, and the run wasn't repeated.
| Pass | Box on the drone | Label and confidence | Boxes elsewhere |
|---|---|---|---|
| Whole frame, resized to 640 px | Yes | bird, 0.14 | 0 |
| 8 overlapping 640 px tiles | Yes | airplane, 0.42 | 0 |
Both passes boxed the same object and nothing else in the frame, but they classified it differently. The whole frame called it a bird at 0.14, just above the 0.10 confidence floor. The tiles called it an airplane at 0.42. The study's evaluation notebook already counted airplane, drone and helicopter as one "aerial object" alert and bird as no alert, so under that rule only the tiled pass raises an alert.
That is a change in classification on one image, not proof of reliable drone recognition: neither pass labelled it a drone. The image was chosen because the drone is visible in it, and I drew the reference box by eye before the run. "Nothing else in the frame" holds for this frame only; it isn't a false-positive rate. The whole-frame time includes the model's start-up, so the two timings aren't a speed comparison.
Whole frame: bird, 0.14

The script, receipt, environment list and input image are published next to the unchanged weights. The receipt records the hashes of the image, the checkpoint and the script, the package versions and every box. Anyone can rerun it and compare.
01 / The problem
The pixels
matter.
Most of a sky image is background, and the object of interest may cover a few dozen pixels of it. A detector that takes 640-pixel input has to resize a 1920-pixel frame to a third of its size, and a 40-pixel drone becomes about 13 pixels. The detail that tells a drone from a bird or a speck on the lens is what goes first.
02 / The prototype
Examine crops.
Reassemble candidates.
The prototype runs a YOLO-based detector over overlapping square crops at the frame's own resolution, maps each candidate back into the original frame and merges candidates that overlap. Nothing is resized away, at the cost of running the detector several times per frame. Whole-frame and tiled approaches were compared on a small consumer-camera field set retained for review.
03 / The finding
Eight of eight frames.
Then the hard part.
In eight selected field frames, the tiled scan returned at least one candidate next to the manually marked object in every frame. That's what the design was built to do: the object survives the scan. The comparison used the reference marks, so it shows the object wasn't lost, not that the system picked it out on its own.
Choosing the right candidate is a separate problem, and it's the open one. The same scans also produced competing candidates. In a separate operator-cued selection check, two of four paired observations succeeded. That's a different task and denominator, so the two results aren't added together.
This small, manually referenced evaluation does not establish general accuracy, autonomous selection, validated position estimates or on-phone performance.
A candidate next to the manual reference in each. The reference marks were used to check.
A separate operator-cued selection check. A different task and count.
Original evaluation images
What the field scans looked like.
These two images come from the original evaluation, unchanged. They are genuine historical image artifacts, not a live model demo. Select either image to open it full size. Their labels are the originals and aren't verified distance measurements. The outputs preserve both the manually referenced match and the competing candidates.
04 / Saved artifact
The checkpoint
was recovered.
The retained best.pt checkpoint was recovered. Its SHA-256 exactly matches a retained model-reference record identifying it as YOLO11n, and it is the file released on Hugging Face and used in the run above.
A second file, last.pt, has a different digest, and its relationship to the training run hasn't been established. Neither model was loaded or run before the 27 October rerun, and that rerun used only best.pt; last.pt isn't released.
What else was retained?
The training and export notebook contains saved text outputs. Field-result tables and separate geometry reports also exist, including later work; they aren't presented here as a validated integrated system. No training chart or rendered detection video was found in the inspected project folders.
The technical reference lists every artifact, what each one shows and the reproduction limits.
05 / Recorded validation
A strong training record.
Not a field score.
The retained Modal notebook records a 50-epoch run that reached mAP50 0.965 and mAP50–95 0.667 on 4,514 validation images with 6,369 annotated objects. On its own dataset, that's a well-trained detector. The scores are averaged across four classes (airplane, bird, drone and helicopter) on the validation split, so they are not drone-specific accuracy, a held-out test result or field reliability.
The recovered checkpoint carries its own copy of the training history. All 200 stored metric values agree with the notebook's 50 epochs within printed rounding, with a largest difference of 0.00050. That strongly supports that the checkpoint came from this run; an original transfer receipt wasn't found.
The training results and licences keep the checkpoint's stored metrics separate from the notebook's later validation scores, and explain the dataset's CC BY 4.0 declaration and the checkpoint's AGPL-3.0 notice.
06 / Inspect the work
Source and
reproduction.
The checkpoint and model card ↗ are public on Hugging Face, with the run script and receipt ↗ from the run above. The original application remains private.
The study repository ↗ holds the screened original images, the technical reference and the retained-observation table.
The training and export notebook ↗ and the exploratory evaluation draft ↗ are sanitized copies. The evaluation draft has no retained execution record and doesn't match boxes against ground truth, so its counts aren't precision, recall or false positives.
The technical reference explains what was edited for publication and what still can't be reproduced.
Connected work
- Carried forward into
- Seemorgh operator console — its detector and tiling, used in the field sensor · source
- Edge Evidence — the need to move and keep the drone video (my recollection)
- Compared with
- Seemorgh operator console — a different kind of evidence, set side by side · source
- Threads
- Small things in large frames
Stated in the linked source unless marked as recollection. Connected work


