Browse · Writeups
2024 in Vision: From Moving Pictures to Reading the Needle
Video generation, segmentation with memory, faster detectors, and the challenge of teaching small models to see precise details.
Source and teaching reviews passed · Human editorial review pending.
Sora: generating motion requires more than generating frames
A minute of generated video at 1080p, with light reflecting in puddles, made 2024’s progress tangible. The review opens by contrasting that Sora demonstration with MagVIT, described as generating roughly five-second clips with relatively little detail. Sora still had background defects visible under close inspection, but the jump in duration and detail was striking.
The technical account combines Sora’s public post with OpenSora replication work and related video-generation research. The mechanisms below explain that broader approach; OpenSora’s architecture is not a confirmed specification of Sora.
Training begins with a captioning model supplying descriptions for a large video corpus, extending the synthetic-caption approach used in DALL-E 3. Filtering selects aesthetically suitable clips with sufficient motion. Motion filtering discourages static output: nearly motionless training clips can teach a generator to produce frames that barely change.
OpenSora adapts a MagVIT V2 video encoder, replacing discretization with a variational autoencoder framework that produces continuous space-time latents—compressed representations spanning image space and time. Neighboring frames contain much of the same information. Temporal compression removes repetition, leaving more capacity for meaningful content.
The transformer’s role also changes: - Autoregressive generation: MagVIT generates discrete video tokens through successive conditional predictions. - Diffusion generation: OpenSora uses a diffusion transformer to model generation in the compressed latent space. Both use transformers, but the networks parameterize different generative processes.
The presenter highlights rectified flows as an approach that moves toward single-step sampling as it converges, potentially reducing the many sampling steps required by conventional diffusion methods. No measured speedup is given. Separately, the presenter interprets diffusion-transformer and OpenSora results as showing that increased compute matters more than particular transformer hyperparameter choices. Replication therefore depends on training resources as well as the architectural recipe.
SAM 2: remembering an object across video
At Roboflow, SAM already turned bounding-box predictions into object masks for segmentation, helping users reach useful results with less training data. Many users applied image detectors frame by frame to video. SAM 2: Segment Anything in Images and Videos extends segmentation across time, although Roboflow’s integration was still being developed at the talk.
The motivating example is tracking cells: a user clicks a cell, and the model follows it through a disappearance and return. SAM 2 accepts a bounding box, positive and negative points, or an initial mask, then propagates masks through the video. The prompt identifies what to follow; memory helps preserve its identity.
The video-processing loop is: 1. Encode the current frame into image features. 2. Use attention to combine those features with a memory bank containing recent-frame information, references to previously found objects, and prompts. 3. Generate the current object masks. 4. Fuse the masks with current image features and add the result to memory. Prompts can come from anywhere in a supplied video, including later frames. This supports information beyond what would be available in a strictly forward live stream.
More memory improves performance modestly while substantially slowing inference. The discussed ablation supports a bounded first-in, first-out memory queue, while summarizing the full video history remains a proposed research direction. Separately, SAM 2’s hierarchical image encoder is reported to achieve approximately comparable single-image results with six times faster inference than SAM’s encoder; hardware and model-variant conditions are unspecified.
SAM 2’s model-assisted data engine also couples annotation and training. Humans label reference data, a model learns from those labels, and its predictions become material for further human refinement. The final dataset is described as coming from the resulting model’s outputs, creating a particularly close relationship between model and training set.
Real-time detection: efficiency, pretraining, and specialized losses
The next shift concerns real-time object detectors. On the comparisons presented, recent YOLO versions appear to plateau while DETR-based transformer detectors advance through three complementary changes: - [RT-DETR](https://arxiv.org/abs/2304.08069) reduces attention cost. It decouples features at different scales, reducing how much information the encoder’s quadratic-cost attention processes together. - LW-DETR benefits from pretraining and fast convergence. Its reported improvements extend beyond COCO to Roboflow 100, a benchmark the presenters consider closer to typical user needs. - D-FINE adds specialized loss functions. These training objectives produce reported improvements across multiple DETR frameworks.
Latency must include postprocessing. Including YOLO’s NMS postprocessing step changes the comparison in RT-DETR’s favor for the models examined. The talk reports a 4.6-point COCO AP gain at equal latency for the best D-FINE models, and results approaching 60 AP at roughly 10 milliseconds. Hardware, resolution, precision, exact variants, and the specific baseline for the 4.6-point gain are not identified, so these figures cannot determine deployment performance on their own.
Training duration complicates the pretraining story. In LW-DETR’s analysis, YOLO benefits from pretraining early, but that advantage disappears with longer training. LW-DETR and RT-DETR converge with schedules of 50 and 60 epochs respectively. Shorter schedules might preserve more useful pretrained weights, but that explanation remains a hypothesis.
The practical goal is better detection with less labeled data. The presenters call for more Roboflow 100 evaluation and more pretraining, alongside experiments with larger feature-extraction backbones. Whether real-time DETRs can scale smoothly into slower, higher-accuracy models remains an open question.
MMVP: recognizing a watch without reading its hands
A watch exposes a different limitation. A presenter reports that ChatGPT and Claude fail to read its hands even at increased image resolution, yet can tell the time from a textual description of the hand positions. This unquantified example, with model versions unspecified, separates extracting visual evidence from reasoning about it.
The MMVP benchmark, introduced in “Eyes Wide Shut?”, investigates whether CLIP’s image–caption matching objective leaves out fine visual details. Matching a watch to a caption need not require its exact hand positions. The presenter extends that concern to caption-oriented training generally, without claiming that ChatGPT uses CLIP.
MMVP selects CLIP-blind pairs: images with similar learned representations in CLIP but dissimilar representations in DINOv2. DINOv2 learns from images alone, using a student–teacher framework that encourages consistent representations across crops or regions. Disagreement between the encoders helps identify visual distinctions CLIP may overlook; multiple-choice questions then test those distinctions.
Failures include misreading a school bus’s direction and inventing supporting details, or assigning the same eye count to two different animal images. In the reported evaluation, ChatGPT and Gemini perform somewhat above random guessing, while LLaVA falls below it. These deliberately difficult pairs probe a particular weakness; the presenter links LLaVA’s result to its CLIP initialization and short training.
Adding DINOv2 features tests whether more visual detail resolves the problem: - Additive interpolation improves visual answers only up to a point. Increasing DINOv2’s share eventually severely degrades language-task performance. The presenter attributes this to the difficulty of aligning image-only features with text through an adapter. - Interleaving doubles tokens without solving the task. Supplying both feature sets approximately doubles input tokens but lifts LLaVA 1.5 only slightly above random guessing on MMVP. These experiments expose a second requirement: visual detail must be usable by the language model.
Florence 2 and PaliGemma: expressing locations as tokens
Florence 2 trains spatial detail and meaning together. Its features must locate objects at pixel and region levels while supporting descriptions and relationships. Describing a woman riding on a road, for example, requires identifying both entities and their spatial relationship.
Its annotations connect language to images at three levels: - Image captions describe the whole image. - Region–text pairs support classification, detection, segmentation, and descriptions of individual regions. - Phrase-linked regions connect a localized region to its phrase within a longer description. Vision-encoder features feed an encoder–decoder transformer. Location tokens represent positions in pixel space, allowing tasks such as object detection to be trained as language tasks.
Florence 2’s pretrained representations reportedly reach roughly 60% mAP on COCO when transferred through the DINO detection framework, with faster convergence. Its 0.2-billion- and 0.7-billion-parameter variants also show a revealing tradeoff: removing pixel-level segmentation annotations improves detection in an ablation. The presenter interprets this as a possible capacity bottleneck when learning all the tasks together.
PaliGemma also uses location tokens but puts image features into a decoder-only transformer. Image and task-description tokens form a prefix whose tokens attend fully to one another; output tokens are generated successively. In the segmentation example, an English instruction requests two object classes, and the model returns locations plus token-encoded masks. PaliGemma 2 expands the original Gemma 2B language component to multiple language-model sizes.
The original PaliGemma performs similarly on downstream tasks after seeing 300 million and one billion training examples, again suggesting a possible capacity limit. PaliGemma 2’s COCO detection results improve with both resolution and language-model size. Higher resolution can reveal smaller objects; the presenter also suggests that additional image tokens provide more room for computation.
Direct token prediction and detector transfer are different evaluations. PaliGemma 2’s quoted COCO result of 43.6 is not directly comparable to Florence 2’s roughly 60: PaliGemma performs detection as a language-modeling task, without an added DINO or DETR detector or its specialized detection machinery. On MMVP, a PaliGemma 2 configuration with a two-billion-parameter language model reportedly reaches 47.3% accuracy—above the cited ChatGPT result, whose version is unspecified, but far below the cited 94% human accuracy.
AIMv2: learn detail through image reconstruction
AIMv2 takes another route to visual features compatible with language: reconstruct the image itself. Vision-encoder tokens feed a decoder-only transformer, and autoregressive image reconstruction uses a mean-squared-error objective. Reducing dependence on detection and segmentation annotations makes the training approach easier to scale.
Training randomly selects an image-token prefix length. Tokens within the prefix attend fully to one another, after which the model reconstructs the remaining image and its caption through successive predictions. At the largest model size discussed, performance continues improving with additional training samples. Further gains from jointly scaling data and model size remain an extrapolation.
AIMv2’s ImageNet classification accuracy improves with resolution, which the presenter interprets as evidence that it uses fine detail. With a transformer detection head trained on COCO, it scores a reported 60.2 versus CLIP’s 59.1; the metric and full experimental settings are unspecified. The small gap motivates a methodological concern: extensive downstream training can obscure differences in pretrained representations.
For applications with limited labels, the proposed test is to compare models with fewer examples and before detection training reaches convergence. Roboflow 100 is suggested as a useful setting. This asks how much training work a representation saves, alongside the eventual accuracy of a fully trained detector.
An audience question raises the generalist-versus-specialist problem: why do general vision models still struggle to replace specialist detectors for automatic labeling? Respondents offer two explanations rather than a new measured comparison: - Detection requires specialized machinery. Classification transfers readily from pretrained features, while real-time detection depends on heavily optimized architectures and losses. - Pretraining historically offered limited gains for YOLO. That weakened the incentive to improve its pretrained representations; transformer detectors may change the opportunity.
Moondream: prototype broadly, then prune for deployment
Vik introduces Moondream as a small vision-language model—a model that connects image inputs with language—first released on December 29, 2023. It subsequently expanded into deployment tooling and client libraries, with composable developer capabilities, edge deployment, and real-time execution as central goals.
At the talk, its capabilities include: - Questions and captions: answer image questions and generate descriptions, including captions used to build diffusion-model training datasets. Vik says the team has worked to reduce caption hallucinations. - Open-vocabulary detection: request objects such as soccer balls or deer without training a dedicated detector for the request. - Pointing: return an object’s center, useful for tasks such as user-interface automation.
Two model sizes serve different deployment needs. The general-purpose two-billion-parameter model targets servers, desktops, and flagship phones. A recently released 0.5-billion-parameter model uses less memory and targets older phones and edge devices. Vik describes the smaller model primarily as a distillation target and proof of concept, with inference-client optimization still incomplete.
The smaller model comes from iterative pruning during continued training. A gradient-based method estimates the importance of components such as attention heads and channels. The team removes a small portion selected to minimize performance loss, retrains to recover performance, and repeats. The released model’s objective was to preserve accuracy across a broad benchmark set.
Vik proposes a more application-specific deployment workflow: prototype with the larger model, identify the capabilities the application needs, then prune toward a smaller model suited to the target hardware. Application requirements guide what to preserve. The 0.5-billion-parameter release demonstrates the direction’s feasibility rather than a finished automatic specialization system.
Reading gauges: make intermediate perception inspectable
A customer’s analog gauges brings the earlier watch problem into an operational setting. The desired application monitors field instruments, with a temperature threshold as an illustrative trigger for shutting down equipment. Vik expected a straightforward task. Moondream failed to read the gauges, and other open-source and large-company models failed to provide usable training outputs.
Vik’s hypothesis concerns supervision that rewards product identification rather than needle reading. Internet gauge photos often accompany descriptions of the brand, sensor type, and range, with the needle sitting at zero. A model can learn those product details without attending to the needle. Synthetic data helped, but reaching what Vik calls reasonable performance required millions of synthetic gauge images; no numerical accuracy is given.
Grounded chain of thought breaks reading into explicit visual subtasks: 1. Select the relevant scale, such as Celsius on a dial with two scales. 2. Locate the needle tip and the labeled values around it. 3. Count the intervening tick marks. 4. Calculate the reading. The model also predicts image points associated with intermediate steps, making their locations inspectable. MolMo’s pointing capability inspired the switch from bounding boxes to points for this task.
One generated explanation selects the inner Celsius scale and places the needle between 50 and 60, but a shadow and an off-position dial leave the true reading uncertain. The reported sample-efficiency improvement comes from a separate clock-reading benchmark of about 500 images, with no numerical improvement stated.
A second gauge example demonstrates the debugging value. The stated correct reading is 54°C; the model returns 56°C after identifying the eighth tick instead of the seventh. An incorrect answer becomes a localized counting error. That suggests targeted changes: explicitly count each tick from 40, or begin at a closer reference mark.
The next experiments address adaptation and generalization:
- Customer corrections: a few examples could correct intermediate mistakes, such as a misplaced needle point, through prompting or test-time training. Better subsequent readings remain a hoped-for result.
- Transfer beyond clocks and gauges: image-grounded reasoning had only been applied to those tasks, leaving broader generalization unresolved.
- Spelling for text recognition: a related approach partly worked for reading text and partial matching, such as checking whether a license plate starts with W-H-A, without a quantitative evaluation.
Vik closes with a hypothesis about why visual reasoning lags: the internet contains abundant explanations of problem solving but relatively little explicit instruction in perception. Image–alt-text pairs often describe content without teaching how to inspect it. The proposed response is to teach individual visual tasks explicitly, then scale that teaching. Moondream’s goal remains strong vision-language models that run wherever applications need them, with substantial work ahead and an invitation to technical discussion and collaboration.