pub struct PerImageTable {
pub image_id: Vec<i64>,
pub n_gt: Vec<u32>,
pub n_dt: Vec<u32>,
pub tp_at_50: Vec<u32>,
pub fp_at_50: Vec<u32>,
pub fn_at_50: Vec<u32>,
pub tp_at_75: Vec<u32>,
pub fp_at_75: Vec<u32>,
pub fn_at_75: Vec<u32>,
pub tp_mean_iou: Vec<u32>,
}Expand description
One row per image — rollup of locked-spine outputs across categories at area=ALL.
No ap / ap_50 columns (per-image AP is degenerate; see
docs/explanation/why-no-per-image-ap.md).
Quirk G2 is honored automatically: a DT matched to a crowd GT
carries dt_ignore=true, so TP/FP filters via !dt_ignore exclude
it. Crowd GTs do not contribute to n_gt either (excluded by
gt_ignore).
n_dt reflects the post-maxDets cap stored on the cells (typical
COCO cap of 100 swallows nearly all images).
Fields§
§image_id: Vec<i64>COCO image id, sourced from the dataset’s id-ascending image order (matching the grid’s I-axis ordering).
n_gt: Vec<u32>Non-ignore GT count, summed across categories at area=ALL.
n_dt: Vec<u32>DT count, summed across categories at area=ALL (post-maxDets; see struct doc).
tp_at_50: Vec<u32>True positives at IoU=0.50 — DTs with dt_matched && !dt_ignore.
fp_at_50: Vec<u32>False positives at IoU=0.50 — DTs with !dt_matched && !dt_ignore.
fn_at_50: Vec<u32>False negatives at IoU=0.50 — n_gt - tp_at_50.
tp_at_75: Vec<u32>True positives at IoU=0.75.
fp_at_75: Vec<u32>False positives at IoU=0.75.
fn_at_75: Vec<u32>False negatives at IoU=0.75.
tp_mean_iou: Vec<u32>Mean true-positive count across the T-axis, floored.
Implementations§
Trait Implementations§
Source§impl Clone for PerImageTable
impl Clone for PerImageTable
Source§fn clone(&self) -> PerImageTable
fn clone(&self) -> PerImageTable
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for PerImageTable
impl RefUnwindSafe for PerImageTable
impl Send for PerImageTable
impl Sync for PerImageTable
impl Unpin for PerImageTable
impl UnsafeUnpin for PerImageTable
impl UnwindSafe for PerImageTable
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out indicating that a T is niched.