{"id":"89bfad4f-6595-4b75-8e58-c6a28ef7f8cb","arxiv_id":"2505.16882","paper_version":2,"verdict":"CONDITIONAL","confidence":"HIGH","novelty_score":5.0,"correctness_risk":"medium","formal_verification":"none","parameter_count":5,"one_line_summary":"An open-source SfM-based pipeline unwraps drone footage of zebra escapes with about 0.28 body-length error, enabling collective behavior metrics from a single video.","lead":"Researchers tested three open-source computer vision methods to remove drone motion from aerial video of zebras, and showed that an interpolated Structure-from-Motion approach gives the most accurate ground-fixed trajectories. They then used the best method to measure alignment and spacing in a herd of 44 zebras during a simulated predator approach.","discovery_kind":"new_application","skeptic_critique":{"model":"deepseek-v4-flash","headline":"Tree-dispersion validation is an aggregate mean; per-tree maxima reach 3.6 body lengths and no time/location stratification supports per-frame behavioral metrics.","rationale":"The paper makes a genuine methodological contribution: the SfM-based unwrapping pipeline is clearly described, uses open-source tools, and the tree-based validation is a sensible external benchmark that lowers circularity concerns. The reader's CONDITIONAL verdict is appropriately calibrated, because the behavioral findings rest on a single selectively chosen video and the absence of uncertainty quantification. My stress-test sharpens one aspect of the reader's weakest assumption: the 0.275 body-length figure is a weighted mean over tree samples, and the per-tree maxima in Table 3 (up to 3.58 body lengths) reveal a heavy-tailed error distribution. Since the behavioral metrics are computed per frame from the same unwrapped coordinates, the relevant quantity is the per-frame error at the times and image locations where zebras are tracked, not the global mean. A small number of high-error frames during a stop or at the periphery could produce the reported pre-stop spacing increase or center-periphery alignment pattern. This does not invalidate the method, but it means the current validation does not fully support the per-frame behavioral claims. The proposed stratification test would settle the concern directly. If the stratified 95th percentile error remains small in the relevant bins, the concern does not land and the conditional acceptance stands; if it is large, the behavioral results should be recast as illustrative only. Since the reader already recommended exactly this kind of strengthening, no verdict change is needed.","tokens_in":12800,"tokens_out":11539,"duration_ms":108266,"concrete_test":"Stratify the tree-dispersion error by time window (the four escape waves vs. stops) and by image-coordinate bin (e.g., quadrant or distance from image center); overlay the empirical distribution of zebra keypoint positions during those windows. Compute the 95th percentile of per-frame tree error in the bins where escaping zebras are actually located during fast-motion frames. If that 95th percentile exceeds roughly one zebra body length, the reported spacing and alignment findings are not robust to the measured unwrapping error.","verdict_should_be":"UNCHANGED","load_bearing_attack":"The load-bearing assertion is that a mean tree-dispersion error of 0.275 body lengths makes the unwrapped trajectories trustworthy for behavioral analysis. This validation (Section 2.3.3, Table 3) reports a weighted average over 45 static tree trajectories, but the per-tree statistics show a heavy-tailed error distribution: tree 2 has a maximum dispersion of 3.58 body lengths, several trees exceed 1.5 body lengths, and per-tree standard deviations are comparable to their means. The mean is an aggregate over all frames and image positions; it does not bound the error at the frames and locations that drive the behavioral metrics. The drone is moving fastest during the escape waves, and zebras can appear near image edges where ray-plane intersection errors from the single-plane assumption and interpolated camera poses are largest. The reported behavioral patterns—pre-stop spacing increase and center-periphery alignment—are computed from per-frame coordinates, so a small number of high-error frames could create or mask these patterns. The paper does not report how the 0.275 mean distributes over time, over image position, or over the actual zebra keypoint locations, so the metric does not yet establish suitability for per-frame behavioral analysis.","agreement_with_reader":"partial"},"referee_report":{"model":"deepseek-v4-flash","summary":"The paper presents a computational pipeline for unwrapping drone-captured video of moving animals into world coordinates, using three methods: frame-to-frame image registration (itk-elastix), Structure-from-Motion with linear pose interpolation, and SfM with registration-based rotation interpolation. The methods are validated by tracking 45 static trees and measuring their dispersion after unwrapping; the SfM with linear interpolation achieves the lowest error (weighted mean 0.275 zebra body lengths). The selected method is then applied to a single 3.5-minute drone video of 44 plains zebras during four escape waves, from which the authors extract individual trajectories and compute collective metrics: polarization, inter-individual spacing, speed, and center-periphery alignment. They report increased alignment during escape, a transient widening of spacing before stopping, and higher alignment near the herd center, framing these as a proof of concept rather than a generalizable behavioral finding.","tokens_in":12933,"tokens_out":3791,"duration_ms":33832,"significance":"The paper addresses a practical and timely problem: extracting reliable animal trajectories from drone footage without ground control points or GPS, using open-source tools. The validation against static trees is an external, non-circular benchmark and provides a concrete error estimate in ecologically meaningful units. The authors make their code publicly available as notebooks, which supports reproducibility and follow-up work. If the validation can be shown to support per-frame behavioral analysis, the framework would be a useful contribution to collective behavior research in the field. The behavioral results are explicitly presented as illustrative, and the paper discusses limitations such as the single-video basis and the inability to identify individuals. The method has clear potential to scale to the larger dataset (41 videos) mentioned in the paper.","major_comments":[{"comment":"The validation reports a weighted average dispersion of 0.275 body lengths for the SfM linearly interpolated method, but the per-tree statistics in Table 3 reveal a heavy-tailed error distribution: tree 2 has a maximum dispersion of 3.58 body lengths, tree 68 reaches 1.85, tree 218 reaches 1.83, and several other trees exceed 1.5. The aggregate mean therefore does not bound the error at the frames and image locations that drive the per-frame behavioral metrics (polarization, spacing, alignment). Since behavioral patterns are computed from per-frame coordinates, a small number of high-error frames could create or mask the reported effects. The authors should report the error as a function of time (or drone speed) and image position, and ideally at the actual zebra keypoint locations, or demonstrate that the behavioral conclusions are robust to excluding frames where the tree-based error exceeds a threshold.","section":"Section 2.3.3, Table 3"},{"comment":"The camera poses between SfM keyframes are obtained by linear interpolation assuming constant velocity motion, as stated in the text. This assumption is not validated against actual drone motion during the fast maneuvers that characterize the escape waves. The tree-dispersion error is averaged over the whole video and may understate the error during periods of rapid drone acceleration or large rotation, exactly when the zebras are moving fastest and when behavioral metrics are most important. The authors should either provide a time-resolved validation (e.g., error versus drone speed estimated from the SfM keyframes) or compare the linear interpolation against an alternative that uses the image content, such as the registration-based rotation method, to show that the choice does not materially affect the behavioral metrics.","section":"Section 2.3.2"},{"comment":"The behavioral metrics (polarization, mean/max inter-individual distance, center-periphery alignment) are reported without uncertainty quantification or sensitivity analysis. Given the heavy-tailed error distribution of the unwrapping validation, the authors should provide confidence intervals (e.g., via bootstrapping over individuals or frames) or show that the observed temporal patterns are stable under alternative preprocessing choices, such as different keypoint confidence thresholds (currently set at 0.9), different displacement exclusion thresholds (currently 2 body lengths per frame), or different Savitzky-Golay smoothing windows (currently 7). Without such analysis, it is difficult to assess whether the reported 'brief widening of spacing before stopping' and 'higher alignment near the center' are robust features or artifacts of a few outlier frames.","section":"Section 2.4 and Section 3"}],"minor_comments":[{"comment":"The text states that 1963 frames were manually annotated, 'approximately 1/5 of the video', but for a 3.5-minute video at 29.97 fps (about 6294 frames), 1963 frames is closer to one third. Please clarify the total number of frames in the selected video or correct the fraction.","section":"Section 2.2"},{"comment":"The tables report 'Weighted average distance' without explicitly stating the units in the table headers; the units (zebra body lengths) are mentioned in the text but should be made explicit in the tables for self-contained reading.","section":"Table 1 and Table 3"},{"comment":"The paper does not report what fraction of keypoints are discarded by the 0.9 confidence threshold or by the two-body-length displacement exclusion. Reporting these fractions would help readers assess the completeness of the trajectory data used for the behavioral metrics.","section":"Section 2.4"},{"comment":"Several references are incomplete or inconsistently formatted (e.g., [3] lacks a journal/year, [4] lacks a year, [12] and [13] have '30:R206–R210' without a journal name, and [35] lists only the author and year without a title). The reference list should be checked against the journal's style.","section":"Section 1 and References"},{"comment":"The scatter plot of speed versus polarization would benefit from a clear colorbar label and a statement about the time interval used for averaging (the text says 'in ~1-second intervals (30 frames)', which is clear, but the colorbar should indicate 'Time (s)' explicitly rather than relying on the caption alone).","section":"Figure 2"},{"comment":"The phrase 'Experimental trials were ran' should be 'Experimental trials were run'.","section":"Section 2.1"}],"recommendation":"major_revision","confidential_remarks":"The paper is a methods-first contribution; the behavioral findings are explicitly framed as a proof of concept. The main concern is the mismatch between the aggregate validation metric and the per-frame behavioral claims. The authors should be encouraged to strengthen the validation with time/location-resolved error analysis or robustness checks. The self-citation of the 'movement' package is appropriate given its direct use in the analysis. The paper fits the scope of a computer vision / methods journal, though the behavioral framing in the abstract may need to be toned down further if the validation concerns are not fully addressed."},"author_rebuttal":null,"desk_editor":{"model":"deepseek-v4-flash","letter":"The core method comparison is the real contribution: evaluating three open-source ways to unwrap drone trajectories against static trees as ground truth, and showing SfM with linear interpolation wins with a weighted mean dispersion of 0.275 body lengths. That's a useful result for anyone doing drone-based ethology, and the tree-based validation is a genuine external benchmark—not circular. The code and the 'movement' package usage are sensible, and the paper is refreshingly clear about its limits.\n\nThe soft spots are real but manageable. The validation metric is an aggregate mean; the supplementary tables show several trees with maximum dispersion above 1.5 body lengths, up to 3.58 for tree 2. That means the error distribution is heavy-tailed, and the mean doesn't bound the error at specific frames or image locations. Since the behavioral metrics are per-frame, the paper should show that the error doesn't concentrate in the frames or regions that drive the polarization and spacing patterns. Right now the supporting evidence for the behavioral claims is weaker than the headline number suggests. The paper also assumes a single best-fitting ground plane and constant camera velocity between keyframes; those are acknowledged simplifications, but their effect on moving animals near image edges isn't quantified.\n\nThe behavioral results, as the paper itself says, come from one video. That's fine for a proof of concept, but the abstract presents them as 'key behavioral patterns' without the caveat up front. That's a slight overstatement. I'd like to see the error metric reported as a distribution (percentiles, max, or time/location-binned) and preferably a sensitivity analysis for the hand-chosen thresholds, plus at least a representative video or trajectory data release for reproducibility.\n\nOverall the method contribution is solid and worth publishing after revision. The behavioral findings should be recast as illustrative, and the uncertainty on trajectories needs to be quantified honestly. I'd send it to peer review.","headline":"A solid, useful comparison of drone-motion unwrapping methods for animal tracking, with an honest external validation; the behavioral patterns are preliminary and the mean error hides a heavy tail that deserves more analysis.","tokens_in":13568,"tokens_out":2810,"would_cite":true,"duration_ms":24143,"reading_group":"yes","serious_thinker":"yes","would_accept_peer_review":true},"rs_alignment":null,"lean_confirmation":null,"pith_extraction":{"msc":[],"pacs":[],"model":"deepseek-v4-flash","headline":"Quarter-body-length error lets drone footage track zebra escapes","keywords":["drone video analysis","Structure-from-Motion","collective animal behavior","plains zebra","escape response","pose estimation","trajectory unwrapping","open-source pipeline"],"falsifier":"Record a controlled test flight where a ground vehicle with RTK-GPS follows a known route across the same savannah terrain while the drone performs the same escape-event maneuvers, unwrap the vehicle's trajectory with the SfM-linear-interpolation method, and compare per-frame positions to the GPS ground truth; if the average error during accelerated or turning flight segments exceeds the $0.275$-body-length benchmark, the method's suitability for behavioral analysis of fast-moving zebras would be falsified.","tokens_in":12518,"feed_emoji":"🦓","tokens_out":13532,"duration_ms":90788,"temperature":0.7,"pith_summary":"This paper seeks to establish that a fully open-source pipeline can convert drone video of moving animals into world-coordinate trajectories with enough accuracy for behavioral analysis, and that doing so for a single escape event can produce biologically meaningful collective patterns. The authors compare three ways of 'unwrapping' a moving-camera video into fixed ground coordinates: frame-to-frame image registration, Structure-from-Motion with linearly interpolated camera poses, and SfM with registration-based rotation. Using static trees as ground references, they find the linearly interpolated SfM approach has the lowest error, an average dispersion of $0.275$ zebra body lengths—about a quarter of a body length. Applied to a 3.5-minute video of 44 zebras fleeing a simulated predator approach, the method yields measurable patterns: alignment increases during escape, spacing briefly widens just before the group stops, and zebras near the herd's center are more aligned than those on the periphery. This matters because it suggests a practical, low-cost route from raw drone footage to quantitative collective-behavior data in wild terrestrial mammals.","feed_headline":"Quarter-body-length error lets drone footage track zebra escapes","feed_subtitle":"A structure-from-motion pipeline separates zebra motion from drone motion for open-source behavioral analysis.","key_machinery":"The load-bearing element is a two-stage 'unwrapping' pipeline. First, Structure-from-Motion (SfM) estimates camera poses on a sparse set of keyframes (every 20th frame plus the first and last), with pixels belonging to zebras masked out so the moving animals do not corrupt the static scene reconstruction; the paper reports an average reprojection error of $0.58$ pixels. Second, the camera position at each missing frame is linearly interpolated between keyframes assuming constant velocity, while orientation is handled either by spherical linear interpolation or by registering each frame to its nearest keyframe. Each observed image point is then projected along its viewing ray onto the best-fitting plane to the reconstructed 2.5D mesh, yielding a world-coordinate trajectory. Static trees, tracked with a deep-learning detector and a multi-object tracker, serve as the objective error reference: since trees do not move, the dispersion of their unwrapped trajectories quantifies the accuracy of each unwrapping method. The behavioral metrics (polarization, speed, inter-individual distances, distance from centroid) are then computed from the head and tail keypoints supplied by a pose-estimation model.","core_discovery":"The paper's central claim is that the interpolated Structure-from-Motion approach—estimating camera poses on every 20th frame and then linearly interpolating the missing poses under a constant-velocity assumption—unwraps drone footage into world coordinates with an average tree-dispersion error of $0.275$ zebra body lengths, outperforming both pure image registration ($0.910$ body lengths) and SfM with registration-based rotation ($0.299$ body lengths). The authors argue that this error level makes the extracted individual trajectories trustworthy for behavioral analysis, and they demonstrate the claim by reconstructing the paths of 44 zebras during a four-wave escape event. From those trajectories they report that herd polarization rises with running speed, that the mean inter-individual distance briefly increases immediately before the group stops, and that centrally positioned zebras are more aligned with the herd's mean direction than peripheral ones. They also note that, contrary to the classic selfish-herd prediction, individuals do not consistently move toward the herd's center during the escape.","pith_inferences":["The static-tree error likely underestimates the true trajectory error for zebras because trees have high-contrast, rigid shapes and do not suffer motion blur or partial occlusion; a field validation with objects of known motion would be needed to confirm the $0.275$-body-length accuracy for moving targets.","The constant-velocity interpolation assumption is the most fragile link: any drone acceleration or turn between keyframes will systematically bias positions, and because these maneuvers often coincide with the start of an escape wave, error may be concentrated exactly when behavioral metrics are most variable.","The finding that central zebras are more aligned could partly reflect a tracking artifact if peripheral animals are more often occluded or have lower pose confidence; this is testable by checking whether the correlation between centroid distance and alignment persists after excluding low-confidence tracks.","The pipeline creates a natural bridge to theoretical models of collective motion: the polarization-speed relationship and the pre-stop spacing peak could be fit to existing self-propelled particle models to infer interaction rules for zebras, something the paper does not do."],"forward_implications":["The same pipeline can be applied to the rest of the collected videos to test whether the observed escape patterns hold across group sizes and contexts, without additional annotation or calibration.","The tree-based error metric provides a simple benchmarking protocol that can be reused to evaluate future unwrapping methods on conservation footage.","The behavioral findings—speed-correlated alignment, pre-stop spacing increase, and central-individual alignment—offer concrete, quantitative predictions about zebra coordination that could be compared with other terrestrial herd species.","Because the method uses only open-source tools and runs on a consumer GPU, it lowers the technical barrier for conservationists to move from raw drone footage to trajectory data."],"supporting_citations":[{"why":"Supplies the multi-animal pose estimation (head and tail keypoints) that produces the tracks to be unwrapped.","marker":"[23]"},{"why":"Introduces the use of SfM anchor frames for unwrapping drone footage, which this paper adapts to open-source tools.","marker":"[25]"},{"why":"Provides the image-registration baseline whose error is compared against the SfM variants.","marker":"[26]"},{"why":"Provides the Structure-from-Motion reconstruction and 2.5D mesh used to estimate camera poses and the ground plane.","marker":"[31]"},{"why":"Detects the static trees that are tracked to compute the dispersion error metric.","marker":"[33]"},{"why":"Tracks the detected trees across frames, producing the trajectories whose dispersion quantifies unwrapping error.","marker":"[35]"},{"why":"Computes the behavioral metrics (polarization, spacing, distance from centroid) from the unwrapped keypoints.","marker":"[36]"},{"why":"Documents zebra predator-response behavior and collective coordination, giving the ethological context for the reported patterns.","marker":"[11]"}],"fun_headline_variants":["Zebra escape routes mapped from drone footage with 0.275 body-length error","Quarter-body-length error unlocks drone-based zebra escape analysis","Drone footage tracks 44 zebras' escape with quarter-body-length accuracy","Zebra escape coordination: quarter-body-length precision from drone video"],"cache_read_input_tokens":3200,"weakest_assumption_plain":"The accuracy of the reconstructed zebra trajectories depends on the ground being a single flat plane and on the drone moving at constant speed between the sparse reconstruction frames—if either assumption is violated, the reported quarter-body-length error may be too optimistic for animals in motion.","fun_headline_variants_meta":{"raw":{"variants":["Zebra escape routes mapped from drone footage with 0.275 body-length error","Quarter-body-length error unlocks drone-based zebra escape analysis","Drone footage tracks 44 zebras' escape with quarter-body-length accuracy","Zebra escape coordination: quarter-body-length precision from drone video"]},"model":"deepseek-v4-flash","effort":"low","cost_usd":0.000876,"raw_usage":{"total_tokens":3792,"prompt_tokens":948,"completion_tokens":2844,"prompt_tokens_details":{"cached_tokens":384},"prompt_cache_hit_tokens":384,"prompt_cache_miss_tokens":564,"completion_tokens_details":{"reasoning_tokens":2767}},"tokens_in":564,"tokens_out":2844,"duration_ms":17963,"temperature":1.0,"reasoning_tokens":2767,"cache_read_input_tokens":384,"cache_creation_input_tokens":0},"cache_creation_input_tokens":0},"created_at":"2026-08-07T14:53:04.268807+00:00","model_set":{"reader":"deepseek-v4-flash"},"falsifier":"Record a controlled test flight where a ground vehicle with RTK-GPS follows a known route across the same savannah terrain while the drone performs the same escape-event maneuvers, unwrap the vehicle's trajectory with the SfM-linear-interpolation method, and compare per-frame positions to the GPS ground truth; if the average error during accelerated or turning flight segments exceeds the $0.275$-body-length benchmark, the method's suitability for behavioral analysis of fast-moving zebras would be falsified.","supporting_citations":[{"cited_title":"Emer- gence of splits and collective turns in pigeon flocks under predation","cited_arxiv_id":null,"evidence_quote":"Supplies the multi-animal pose estimation (head and tail keypoints) that produces the tracks to be unwrapped."},{"cited_title":"Odm—a command line toolkit to generate maps, point clouds, 3d models and dems from drone, balloon or kite images","cited_arxiv_id":null,"evidence_quote":"Provides the Structure-from-Motion reconstruction and 2.5D mesh used to estimate camera poses and the ground plane."},{"cited_title":"Deepforest: A python package for rgb deep learning tree crown delineation","cited_arxiv_id":null,"evidence_quote":"Detects the static trees that are tracked to compute the dispersion error metric."},{"cited_title":"Animating rotation with quaternion curves","cited_arxiv_id":null,"evidence_quote":"Tracks the detected trees across frames, producing the trajectories whose dispersion quantifies unwrapping error."},{"cited_title":"Peri, Dhruv Sharma, Laura Porta, Iv ´an Varela, and Adam L","cited_arxiv_id":null,"evidence_quote":"Computes the behavioral metrics (polarization, spacing, distance from centroid) from the unwrapped keypoints."},{"cited_title":"Rubenstein","cited_arxiv_id":null,"evidence_quote":"Documents zebra predator-response behavior and collective coordination, giving the ethological context for the reported patterns."}],"review_version":1}