@camstack/addon-post-analysis 1.2.265 → 1.2.266
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/pipeline-analytics/{_virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_analytics_widgets-DhI7w_A1.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_analytics_widgets-Cpkxf2UJ.mjs} +1 -1
- package/dist/pipeline-analytics/{hostInit-D3T2_eK6.mjs → hostInit-BTMiHQhW.mjs} +1 -1
- package/dist/pipeline-analytics/index.js +14 -5
- package/dist/pipeline-analytics/index.mjs +14 -5
- package/dist/pipeline-analytics/remoteEntry.js +1 -1
- package/package.json +1 -1
|
@@ -37075,6 +37075,7 @@ function growthAdjacentMatch(track, det, ctx) {
|
|
|
37075
37075
|
const trackArea = track.w * track.h;
|
|
37076
37076
|
const detArea = det.w * det.h;
|
|
37077
37077
|
if (trackArea <= 0 || detArea <= 0) return false;
|
|
37078
|
+
if (ctx.frameArea > 0 && trackArea / ctx.frameArea > .01) return false;
|
|
37078
37079
|
const larger = Math.max(trackArea, detArea);
|
|
37079
37080
|
const smaller = Math.min(trackArea, detArea);
|
|
37080
37081
|
if (larger / smaller < 1.5) return false;
|
|
@@ -37228,6 +37229,12 @@ var SortTracker = class SortTracker {
|
|
|
37228
37229
|
* and a busy one span the same seconds (D438).
|
|
37229
37230
|
*/
|
|
37230
37231
|
frameSeq = 0;
|
|
37232
|
+
/**
|
|
37233
|
+
* The area of the frame this pass is running over, or `0` when the caller
|
|
37234
|
+
* gave no frame context. Read by the growth clause's FRAGMENT test, which
|
|
37235
|
+
* three call sites reach and only one of them could have been handed it.
|
|
37236
|
+
*/
|
|
37237
|
+
frameArea = 0;
|
|
37231
37238
|
/** Sink for track deaths — see {@link setTrackLossObserver}. */
|
|
37232
37239
|
trackLossObserver = null;
|
|
37233
37240
|
trackLossSampler = new TrackLossSampler();
|
|
@@ -37345,7 +37352,7 @@ var SortTracker = class SortTracker {
|
|
|
37345
37352
|
if (!this.config.reacquireTimeScaled) return "plausible-birth-veto";
|
|
37346
37353
|
return this.isUnambiguousReach(track, det, detections) ? "already-claimed" : "crowd-guard";
|
|
37347
37354
|
}
|
|
37348
|
-
if (growthAdjacentMatch(track.bbox, det.bbox,
|
|
37355
|
+
if (growthAdjacentMatch(track.bbox, det.bbox, this.growthContext(track, timestamp))) return "already-claimed";
|
|
37349
37356
|
return "geometry";
|
|
37350
37357
|
}
|
|
37351
37358
|
/** Emit one dropped-detection record, subject to the refusal sampler. */
|
|
@@ -37472,10 +37479,11 @@ var SortTracker = class SortTracker {
|
|
|
37472
37479
|
});
|
|
37473
37480
|
}
|
|
37474
37481
|
/** When the pair is being judged, relative to `track`. */
|
|
37475
|
-
|
|
37482
|
+
growthContext(track, timestamp) {
|
|
37476
37483
|
return {
|
|
37477
37484
|
trackAgeMs: timestamp - track.firstSeen,
|
|
37478
|
-
gapMs: timestamp - track.lastSeen
|
|
37485
|
+
gapMs: timestamp - track.lastSeen,
|
|
37486
|
+
frameArea: this.frameArea
|
|
37479
37487
|
};
|
|
37480
37488
|
}
|
|
37481
37489
|
/** Whether two macro-classes may be collapsed as the SAME subject. Same class
|
|
@@ -37604,7 +37612,7 @@ var SortTracker = class SortTracker {
|
|
|
37604
37612
|
});
|
|
37605
37613
|
return true;
|
|
37606
37614
|
}
|
|
37607
|
-
if (t.class === det.class && growthAdjacentMatch(t.bbox, det.bbox,
|
|
37615
|
+
if (t.class === det.class && growthAdjacentMatch(t.bbox, det.bbox, this.growthContext(t, timestamp))) {
|
|
37608
37616
|
this.reportBind("spawn-dedup", "growth", t, det, timestamp);
|
|
37609
37617
|
return true;
|
|
37610
37618
|
}
|
|
@@ -37779,7 +37787,7 @@ var SortTracker = class SortTracker {
|
|
|
37779
37787
|
const tc = bboxCentroid(track.bbox);
|
|
37780
37788
|
const dc = bboxCentroid(det.bbox);
|
|
37781
37789
|
if (Math.hypot(tc.x - dc.x, tc.y - dc.y) <= this.reacquireReach(track, timestamp, timeScaled)) return "centroid";
|
|
37782
|
-
if (growthAdjacentMatch(track.bbox, det.bbox,
|
|
37790
|
+
if (growthAdjacentMatch(track.bbox, det.bbox, this.growthContext(track, timestamp))) return "growth";
|
|
37783
37791
|
return null;
|
|
37784
37792
|
}
|
|
37785
37793
|
/**
|
|
@@ -38007,6 +38015,7 @@ var SortTracker = class SortTracker {
|
|
|
38007
38015
|
update(detections, timestamp, frameContext) {
|
|
38008
38016
|
this.frameSeq++;
|
|
38009
38017
|
const frameArea = frameContext ? frameContext.frameWidth * frameContext.frameHeight : 0;
|
|
38018
|
+
this.frameArea = frameArea;
|
|
38010
38019
|
const continuationOnly = frameContext?.continuationOnly ?? EMPTY_INDEX_SET;
|
|
38011
38020
|
const resurrectedScene = /* @__PURE__ */ new Map();
|
|
38012
38021
|
if (this.config.maxTrackLifetimeMs > 0) {
|
|
@@ -37050,6 +37050,7 @@ function growthAdjacentMatch(track, det, ctx) {
|
|
|
37050
37050
|
const trackArea = track.w * track.h;
|
|
37051
37051
|
const detArea = det.w * det.h;
|
|
37052
37052
|
if (trackArea <= 0 || detArea <= 0) return false;
|
|
37053
|
+
if (ctx.frameArea > 0 && trackArea / ctx.frameArea > .01) return false;
|
|
37053
37054
|
const larger = Math.max(trackArea, detArea);
|
|
37054
37055
|
const smaller = Math.min(trackArea, detArea);
|
|
37055
37056
|
if (larger / smaller < 1.5) return false;
|
|
@@ -37203,6 +37204,12 @@ var SortTracker = class SortTracker {
|
|
|
37203
37204
|
* and a busy one span the same seconds (D438).
|
|
37204
37205
|
*/
|
|
37205
37206
|
frameSeq = 0;
|
|
37207
|
+
/**
|
|
37208
|
+
* The area of the frame this pass is running over, or `0` when the caller
|
|
37209
|
+
* gave no frame context. Read by the growth clause's FRAGMENT test, which
|
|
37210
|
+
* three call sites reach and only one of them could have been handed it.
|
|
37211
|
+
*/
|
|
37212
|
+
frameArea = 0;
|
|
37206
37213
|
/** Sink for track deaths — see {@link setTrackLossObserver}. */
|
|
37207
37214
|
trackLossObserver = null;
|
|
37208
37215
|
trackLossSampler = new TrackLossSampler();
|
|
@@ -37320,7 +37327,7 @@ var SortTracker = class SortTracker {
|
|
|
37320
37327
|
if (!this.config.reacquireTimeScaled) return "plausible-birth-veto";
|
|
37321
37328
|
return this.isUnambiguousReach(track, det, detections) ? "already-claimed" : "crowd-guard";
|
|
37322
37329
|
}
|
|
37323
|
-
if (growthAdjacentMatch(track.bbox, det.bbox,
|
|
37330
|
+
if (growthAdjacentMatch(track.bbox, det.bbox, this.growthContext(track, timestamp))) return "already-claimed";
|
|
37324
37331
|
return "geometry";
|
|
37325
37332
|
}
|
|
37326
37333
|
/** Emit one dropped-detection record, subject to the refusal sampler. */
|
|
@@ -37447,10 +37454,11 @@ var SortTracker = class SortTracker {
|
|
|
37447
37454
|
});
|
|
37448
37455
|
}
|
|
37449
37456
|
/** When the pair is being judged, relative to `track`. */
|
|
37450
|
-
|
|
37457
|
+
growthContext(track, timestamp) {
|
|
37451
37458
|
return {
|
|
37452
37459
|
trackAgeMs: timestamp - track.firstSeen,
|
|
37453
|
-
gapMs: timestamp - track.lastSeen
|
|
37460
|
+
gapMs: timestamp - track.lastSeen,
|
|
37461
|
+
frameArea: this.frameArea
|
|
37454
37462
|
};
|
|
37455
37463
|
}
|
|
37456
37464
|
/** Whether two macro-classes may be collapsed as the SAME subject. Same class
|
|
@@ -37579,7 +37587,7 @@ var SortTracker = class SortTracker {
|
|
|
37579
37587
|
});
|
|
37580
37588
|
return true;
|
|
37581
37589
|
}
|
|
37582
|
-
if (t.class === det.class && growthAdjacentMatch(t.bbox, det.bbox,
|
|
37590
|
+
if (t.class === det.class && growthAdjacentMatch(t.bbox, det.bbox, this.growthContext(t, timestamp))) {
|
|
37583
37591
|
this.reportBind("spawn-dedup", "growth", t, det, timestamp);
|
|
37584
37592
|
return true;
|
|
37585
37593
|
}
|
|
@@ -37754,7 +37762,7 @@ var SortTracker = class SortTracker {
|
|
|
37754
37762
|
const tc = bboxCentroid(track.bbox);
|
|
37755
37763
|
const dc = bboxCentroid(det.bbox);
|
|
37756
37764
|
if (Math.hypot(tc.x - dc.x, tc.y - dc.y) <= this.reacquireReach(track, timestamp, timeScaled)) return "centroid";
|
|
37757
|
-
if (growthAdjacentMatch(track.bbox, det.bbox,
|
|
37765
|
+
if (growthAdjacentMatch(track.bbox, det.bbox, this.growthContext(track, timestamp))) return "growth";
|
|
37758
37766
|
return null;
|
|
37759
37767
|
}
|
|
37760
37768
|
/**
|
|
@@ -37982,6 +37990,7 @@ var SortTracker = class SortTracker {
|
|
|
37982
37990
|
update(detections, timestamp, frameContext) {
|
|
37983
37991
|
this.frameSeq++;
|
|
37984
37992
|
const frameArea = frameContext ? frameContext.frameWidth * frameContext.frameHeight : 0;
|
|
37993
|
+
this.frameArea = frameArea;
|
|
37985
37994
|
const continuationOnly = frameContext?.continuationOnly ?? EMPTY_INDEX_SET;
|
|
37986
37995
|
const resurrectedScene = /* @__PURE__ */ new Map();
|
|
37987
37996
|
if (this.config.maxTrackLifetimeMs > 0) {
|
|
@@ -30,7 +30,7 @@ async function d(e) {
|
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
async function f() {
|
|
33
|
-
return l ||= d(() => import("./_virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_analytics_widgets-
|
|
33
|
+
return l ||= d(() => import("./_virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_analytics_widgets-Cpkxf2UJ.mjs")).catch((e) => {
|
|
34
34
|
throw l = void 0, e;
|
|
35
35
|
}), l;
|
|
36
36
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@camstack/addon-post-analysis",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.266",
|
|
4
4
|
"description": "Post-Analysis bundle — enrichment, embedding-encoder, pipeline-analytics. Multi-entry npm package shipping addons that consume pipeline output.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"camstack",
|