@mikashboks/capture-intelligence-core 0.2.11 → 0.2.13

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.
Files changed (53) hide show
  1. package/dist/cjs/capture-envelope.d.ts +48 -0
  2. package/dist/cjs/capture-envelope.d.ts.map +1 -1
  3. package/dist/cjs/capture-envelope.js.map +1 -1
  4. package/dist/cjs/capture-trust.d.ts +39 -0
  5. package/dist/cjs/capture-trust.d.ts.map +1 -1
  6. package/dist/cjs/capture-trust.js +86 -0
  7. package/dist/cjs/capture-trust.js.map +1 -1
  8. package/dist/cjs/document-classifier.js +5 -5
  9. package/dist/cjs/document-classifier.js.map +1 -1
  10. package/dist/cjs/document-crop-arbitration.d.ts +51 -3
  11. package/dist/cjs/document-crop-arbitration.d.ts.map +1 -1
  12. package/dist/cjs/document-crop-arbitration.js +58 -11
  13. package/dist/cjs/document-crop-arbitration.js.map +1 -1
  14. package/dist/cjs/glare-mask.d.ts +99 -0
  15. package/dist/cjs/glare-mask.d.ts.map +1 -0
  16. package/dist/cjs/glare-mask.js +210 -0
  17. package/dist/cjs/glare-mask.js.map +1 -0
  18. package/dist/cjs/index.d.ts +6 -4
  19. package/dist/cjs/index.d.ts.map +1 -1
  20. package/dist/cjs/index.js +14 -3
  21. package/dist/cjs/index.js.map +1 -1
  22. package/dist/cjs/types.d.ts +6 -0
  23. package/dist/cjs/types.d.ts.map +1 -1
  24. package/dist/cjs/types.js.map +1 -1
  25. package/dist/cjs/version.d.ts +1 -1
  26. package/dist/cjs/version.js +1 -1
  27. package/dist/esm/capture-envelope.d.ts +48 -0
  28. package/dist/esm/capture-envelope.d.ts.map +1 -1
  29. package/dist/esm/capture-envelope.js.map +1 -1
  30. package/dist/esm/capture-trust.d.ts +39 -0
  31. package/dist/esm/capture-trust.d.ts.map +1 -1
  32. package/dist/esm/capture-trust.js +84 -0
  33. package/dist/esm/capture-trust.js.map +1 -1
  34. package/dist/esm/document-classifier.js +5 -5
  35. package/dist/esm/document-classifier.js.map +1 -1
  36. package/dist/esm/document-crop-arbitration.d.ts +51 -3
  37. package/dist/esm/document-crop-arbitration.d.ts.map +1 -1
  38. package/dist/esm/document-crop-arbitration.js +55 -10
  39. package/dist/esm/document-crop-arbitration.js.map +1 -1
  40. package/dist/esm/glare-mask.d.ts +99 -0
  41. package/dist/esm/glare-mask.d.ts.map +1 -0
  42. package/dist/esm/glare-mask.js +204 -0
  43. package/dist/esm/glare-mask.js.map +1 -0
  44. package/dist/esm/index.d.ts +6 -4
  45. package/dist/esm/index.d.ts.map +1 -1
  46. package/dist/esm/index.js +3 -2
  47. package/dist/esm/index.js.map +1 -1
  48. package/dist/esm/types.d.ts +6 -0
  49. package/dist/esm/types.d.ts.map +1 -1
  50. package/dist/esm/types.js.map +1 -1
  51. package/dist/esm/version.d.ts +1 -1
  52. package/dist/esm/version.js +1 -1
  53. package/package.json +1 -1
@@ -0,0 +1,204 @@
1
+ /**
2
+ * Glare / specular masking for the document crop path.
3
+ *
4
+ * Problem (prod failure class #4, "glare steals the contour"): on reflective
5
+ * laminated Sierra Leone IDs and glossy security overlays a specular highlight
6
+ * forms a high-contrast blob whose edges out-compete the true document edge.
7
+ * The contour/Sobel detectors run on a plain luma grayscale with NO pre-mask, so
8
+ * (a) the detector can lock onto the glare boundary -> wrong crop, or (b) glare
9
+ * washes out a true edge -> under-segmentation.
10
+ *
11
+ * This module provides two pure, DOM-free primitives over a luma grey buffer:
12
+ *
13
+ * 1. computeSaturatedClusterCoverage() - what fraction of a region is
14
+ * *cluster* glare (a saturated pixel surrounded by saturated pixels - a
15
+ * specular blob, not an isolated bright speck). Used as a fail-safe
16
+ * DEMOTION signal: a crop whose region is glare-dominant should not be
17
+ * trusted (fall back to the original frame) - see document-crop-arbitration.
18
+ *
19
+ * 2. maskSaturatedClusters() - neutralize cluster-glare pixels to a local
20
+ * non-saturated mean BEFORE edge/contour scoring so the blob stops forming
21
+ * a fake edge. Used (flag-gated) on the review/redetect crop grey buffer.
22
+ *
23
+ * "cluster" is the same intent as quality-checks.hasReviewStageGlare's
24
+ * saturated-cluster definition (deliberately NOT a single-pixel maxBrightness -
25
+ * that was the over-sensitive glare bug). A uniformly bright (non-specular)
26
+ * document is NOT cluster glare because its bright pixels are everywhere, not in
27
+ * a tight blob; the neighbor-ratio test is what separates specular blobs from a
28
+ * generally bright frame, protecting bright/over-exposed but valid documents.
29
+ *
30
+ * NOTE: thresholds here are conservative initial values. They MUST be calibrated
31
+ * against real glare images (crop-lab) and device-QA'd before the SDK is allowed
32
+ * to compute + feed coverage into the live decision. The SDK computation is
33
+ * gated OFF by default for exactly this reason (see runtime-flags
34
+ * isGlareAwareCropDemotionEnabled); the arbitration logic below is always-on but
35
+ * inert until a caller supplies glareCoverageFraction.
36
+ */
37
+ /** Luma at/above this is "saturated" (specular white). */
38
+ export const GLARE_SATURATION_LUMA = 250;
39
+ /**
40
+ * A saturated pixel is part of a *cluster* (specular blob) only when at least
41
+ * this fraction of its 8-neighborhood is also saturated. Isolated saturated
42
+ * specks (text highlights, single hot pixels) are NOT counted - this is the
43
+ * guard that keeps a generally bright document from reading as glare.
44
+ */
45
+ export const GLARE_CLUSTER_MIN_NEIGHBOR_RATIO = 0.625;
46
+ /**
47
+ * Crop-region cluster-glare coverage at/above this fraction => the crop geometry
48
+ * is considered glare-corrupted and the crop should be DEMOTED to the original
49
+ * frame (fail-safe). Conservative initial value; calibrate via crop-lab.
50
+ */
51
+ export const GLARE_DOMINANT_COVERAGE = 0.18;
52
+ /**
53
+ * If essentially the whole examined region is saturated, treat it as high-key /
54
+ * over-exposed rather than localized specular glare. Keep the raw saturation
55
+ * telemetry, but do not demote or mass-mask the crop on this signal alone.
56
+ */
57
+ const GLARE_HIGH_KEY_SATURATED_FRACTION = 0.9;
58
+ const clampRegion = (width, height, region) => {
59
+ if (!region)
60
+ return { x: 0, y: 0, w: width, h: height };
61
+ const x = Math.max(0, Math.min(width, Math.floor(region.x)));
62
+ const y = Math.max(0, Math.min(height, Math.floor(region.y)));
63
+ const w = Math.max(0, Math.min(width - x, Math.floor(region.w)));
64
+ const h = Math.max(0, Math.min(height - y, Math.floor(region.h)));
65
+ return { x, y, w, h };
66
+ };
67
+ const isSaturatedAt = (grey, width, height, px, py, saturationLuma) => {
68
+ if (px < 0 || py < 0 || px >= width || py >= height)
69
+ return false;
70
+ return (grey[py * width + px] ?? 0) >= saturationLuma;
71
+ };
72
+ const saturatedNeighborRatio = (grey, width, height, px, py, saturationLuma) => {
73
+ let saturated = 0;
74
+ let counted = 0;
75
+ for (let dy = -1; dy <= 1; dy += 1) {
76
+ for (let dx = -1; dx <= 1; dx += 1) {
77
+ if (dx === 0 && dy === 0)
78
+ continue;
79
+ const nx = px + dx;
80
+ const ny = py + dy;
81
+ if (nx < 0 || ny < 0 || nx >= width || ny >= height)
82
+ continue;
83
+ counted += 1;
84
+ if (isSaturatedAt(grey, width, height, nx, ny, saturationLuma))
85
+ saturated += 1;
86
+ }
87
+ }
88
+ return counted === 0 ? 0 : saturated / counted;
89
+ };
90
+ /**
91
+ * Fraction of the region that is cluster glare (specular blob). Pure; safe on
92
+ * any luma buffer. Returns zeros for an empty/invalid region.
93
+ */
94
+ export function computeSaturatedClusterCoverage(grey, width, height, region, options) {
95
+ const empty = {
96
+ coverageFraction: 0,
97
+ saturatedFraction: 0,
98
+ sampledPixels: 0,
99
+ };
100
+ if (!grey || !Number.isFinite(width) || !Number.isFinite(height) || width <= 0 || height <= 0) {
101
+ return empty;
102
+ }
103
+ const saturationLuma = options?.saturationLuma ?? GLARE_SATURATION_LUMA;
104
+ const neighborRatio = options?.neighborRatio ?? GLARE_CLUSTER_MIN_NEIGHBOR_RATIO;
105
+ const { x, y, w, h } = clampRegion(width, height, region);
106
+ if (w <= 0 || h <= 0)
107
+ return empty;
108
+ let saturated = 0;
109
+ let cluster = 0;
110
+ let sampled = 0;
111
+ for (let ry = y; ry < y + h; ry += 1) {
112
+ for (let rx = x; rx < x + w; rx += 1) {
113
+ sampled += 1;
114
+ if (!isSaturatedAt(grey, width, height, rx, ry, saturationLuma))
115
+ continue;
116
+ saturated += 1;
117
+ if (saturatedNeighborRatio(grey, width, height, rx, ry, saturationLuma) >= neighborRatio) {
118
+ cluster += 1;
119
+ }
120
+ }
121
+ }
122
+ if (sampled === 0)
123
+ return empty;
124
+ const saturatedFraction = saturated / sampled;
125
+ if (saturatedFraction >= GLARE_HIGH_KEY_SATURATED_FRACTION) {
126
+ return {
127
+ coverageFraction: 0,
128
+ saturatedFraction,
129
+ sampledPixels: sampled,
130
+ };
131
+ }
132
+ return {
133
+ coverageFraction: cluster / sampled,
134
+ saturatedFraction,
135
+ sampledPixels: sampled,
136
+ };
137
+ }
138
+ /** True when the region's cluster-glare coverage is dominant enough to distrust the crop. */
139
+ export function isGlareDominantRegion(coverage, threshold = GLARE_DOMINANT_COVERAGE) {
140
+ if (coverage == null)
141
+ return false;
142
+ const fraction = typeof coverage === 'number' ? coverage : coverage.coverageFraction;
143
+ return Number.isFinite(fraction) && fraction >= threshold;
144
+ }
145
+ /**
146
+ * Neutralize cluster-glare pixels to the mean of nearby NON-saturated pixels so
147
+ * the specular blob stops forming a fake edge for Sobel/Canny. Isolated
148
+ * saturated specks are left intact (only clusters are masked). Pixels are
149
+ * replaced with a local non-saturated mean (window radius `radius`); if a
150
+ * cluster pixel has no non-saturated neighbor in range it is left unchanged
151
+ * (avoids smearing a fully-blown region into a fake flat edge).
152
+ *
153
+ * Returns a COPY - never mutates the input. Pure and DOM-free.
154
+ */
155
+ export function maskSaturatedClusters(grey, width, height, options) {
156
+ const saturationLuma = options?.saturationLuma ?? GLARE_SATURATION_LUMA;
157
+ const out = new Uint8ClampedArray(width > 0 && height > 0 ? width * height : 0);
158
+ let saturated = 0;
159
+ for (let i = 0; i < out.length; i += 1) {
160
+ const value = grey[i] ?? 0;
161
+ out[i] = value;
162
+ if (value >= saturationLuma)
163
+ saturated += 1;
164
+ }
165
+ if (out.length === 0)
166
+ return { masked: out, coverageFraction: 0 };
167
+ if (saturated / out.length >= GLARE_HIGH_KEY_SATURATED_FRACTION) {
168
+ return { masked: out, coverageFraction: 0 };
169
+ }
170
+ const neighborRatio = options?.neighborRatio ?? GLARE_CLUSTER_MIN_NEIGHBOR_RATIO;
171
+ const radius = Math.max(1, Math.floor(options?.radius ?? 3));
172
+ let masked = 0;
173
+ for (let py = 0; py < height; py += 1) {
174
+ for (let px = 0; px < width; px += 1) {
175
+ if (!isSaturatedAt(grey, width, height, px, py, saturationLuma))
176
+ continue;
177
+ if (saturatedNeighborRatio(grey, width, height, px, py, saturationLuma) < neighborRatio) {
178
+ continue;
179
+ }
180
+ // cluster pixel - replace with local non-saturated mean
181
+ let sum = 0;
182
+ let count = 0;
183
+ for (let dy = -radius; dy <= radius; dy += 1) {
184
+ for (let dx = -radius; dx <= radius; dx += 1) {
185
+ const nx = px + dx;
186
+ const ny = py + dy;
187
+ if (nx < 0 || ny < 0 || nx >= width || ny >= height)
188
+ continue;
189
+ const v = grey[ny * width + nx] ?? 0;
190
+ if (v >= saturationLuma)
191
+ continue;
192
+ sum += v;
193
+ count += 1;
194
+ }
195
+ }
196
+ if (count > 0) {
197
+ out[py * width + px] = Math.round(sum / count);
198
+ masked += 1;
199
+ }
200
+ }
201
+ }
202
+ return { masked: out, coverageFraction: masked / out.length };
203
+ }
204
+ //# sourceMappingURL=glare-mask.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"glare-mask.js","sourceRoot":"","sources":["../../src/glare-mask.ts"],"names":[],"mappings":"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"}
@@ -24,14 +24,16 @@ export type { ReviewReason, DocumentRegionBounds, DocumentRegionImageSize, Revie
24
24
  export { DOCUMENT_REVIEW_REGION_MIN_READABLE_WIDTH_PX, evaluateDocumentReviewQuality, hasNoCropClarityUncertainty, } from './review-quality.js';
25
25
  export type { CaptureImageSize, CapturePreviewRect, CaptureCropRect, CapturePreviewResizeMode, CaptureRotationDegrees, CaptureNormalizationUnsafeReason, CaptureClampedEdges, CaptureNormalizationDiagnostics, CaptureFrameMode, PreviewRectToImageCropInput, ExpectedOrientationInput, CaptureNormalizationPlanInput, CaptureResizePlan, CaptureNormalizationPlan, } from './capture-normalization.js';
26
26
  export { mapPreviewRectToImageCropWithDiagnostics, mapPreviewRectToImageCrop, getRotationToExpectedOrientation, buildCaptureNormalizationPlan, getDocumentCaptureFrameAspectRatio, } from './capture-normalization.js';
27
- export type { CaptureTrustClient, CaptureTrustPhase, CaptureTrustCaptureSource, CaptureTrustDocumentSide, CaptureTrustCropProvenance, CaptureTrustReasonCode, CaptureTrustGate, CropTrustTier, DocumentFaceCorroborationTrustStatus, CaptureTrustContextInput, CaptureTrustLiveInput, CaptureTrustClassifierInput, CaptureTrustMrzInput, CaptureTrustGeometryInput, CaptureTrustReadableTextInput, CaptureTrustCropInput, CaptureTrustCaptureInput, CaptureTrustReviewInput, CaptureTrustPolicyInput, CaptureTrustInput, CaptureTrustDiagnostics, CaptureTrustDecision, } from './capture-trust.js';
28
- export { decideCaptureTrust } from './capture-trust.js';
27
+ export type { CaptureTrustClient, CaptureTrustPhase, CaptureTrustCaptureSource, CaptureTrustDocumentSide, CaptureTrustCropProvenance, CaptureTrustReasonCode, CaptureTrustGate, CropTrustTier, DocumentFaceCorroborationTrustStatus, CaptureTrustContextInput, CaptureTrustLiveInput, CaptureTrustClassifierInput, CaptureTrustMrzInput, CaptureTrustGeometryInput, CaptureTrustReadableTextInput, CaptureTrustCropInput, CaptureTrustCaptureInput, CaptureTrustReviewInput, CaptureTrustPolicyInput, CaptureTrustInput, CaptureTrustDiagnostics, CaptureTrustDecision, CaptureTrustMetadataSnapshot, } from './capture-trust.js';
28
+ export { decideCaptureTrust, buildCaptureTrustDecisionSnapshot, buildCaptureTrustDiagnosticsSnapshot, } from './capture-trust.js';
29
29
  export type { SubmittedImageSource, SubmittedImageReason, SubmittedImageInput, CaptureSeams, CaptureDecisionEnvelope, } from './capture-envelope.js';
30
30
  export { CAPTURE_ENVELOPE_SCHEMA_VERSION, CAPTURE_DECISION_ENVELOPE_KEY, decideSubmittedDocumentImage, isCaptureDecisionEnvelope, } from './capture-envelope.js';
31
31
  export type { DocumentProfileFamily, DocumentProfile } from './document-profiles.js';
32
32
  export { getDocumentProfile, normalizeDocumentProfileType } from './document-profiles.js';
33
- export type { DocumentCropShapeFamily, DocumentCropReviewPolicy, DocumentCropArbitrationDecision, DocumentCropArbitrationAssessment, DocumentCropPoint, DocumentCropRect, DocumentCropImageSize, DocumentCropQuadrilateral, DocumentCropArbitrationMetadata, } from './document-crop-arbitration.js';
34
- export { DEFAULT_CROP_CONFIDENCE_THRESHOLD, DEFAULT_RECTANGLE_CROP_CONFIDENCE_THRESHOLD, DEFAULT_SUBMIT_CROP_INSET_FLOOR_ENABLED, DOCUMENT_CROP_ASPECT_MIN, DOCUMENT_CROP_ASPECT_MAX, CARD_LIKE_MEASURED_CROP_MIN_AREA_RATIO, QUIET_ZONE_CLAMP_CUT_OFF_RISK_LOSS, SAFE_LIVE_QUAD_INSET_MIN, isCardLikeCropAspect, getDocumentCropShapeFamily, getDocumentCropSafetyThresholds, getDocumentCropSafetyAspectRatio, isDocumentCropAspectSafe, getMeasuredDocumentCropMinAreaRatio, hasExplicitDocumentCutOffReason, hasExplicitUnsafeCaptureReason, hasCaptureDocumentCutOffEvidence, hasMarginSafeDocumentCropEvidence, hasMarginSafeReliableCaptureQuad, hasUnsafeInsetReliableCaptureQuad, getCapturePageRecognitionText, hasTrustedMrzCaptureEvidence, hasTrustedCardFrontRecognitionReason, hasReadyCaptureCandidateDecision, hasReadySafeCardLiveEvidence, hasHardCaptureCutOffEvidence, hasNativeOverfullCaptureRisk, hasNativeClampedCaptureRisk, canTrustReadySafeCardEvidenceOverNativeUnsafeRisk, isDocumentCropVerified, getDocumentCropRejectedReason, assessDocumentCropCandidate, getDocumentCropReviewPolicy, getDocumentCropTrustTier, } from './document-crop-arbitration.js';
33
+ export type { DocumentCropShapeFamily, DocumentCropReviewPolicy, DocumentCropArbitrationDecision, DocumentCropArbitrationAssessment, DocumentCropPoint, DocumentCropRect, DocumentCropImageSize, DocumentCropQuadrilateral, DocumentCropArbitrationMetadata, DocumentCropCaptureEvidenceContext, } from './document-crop-arbitration.js';
34
+ export { DEFAULT_CROP_CONFIDENCE_THRESHOLD, DEFAULT_RECTANGLE_CROP_CONFIDENCE_THRESHOLD, DEFAULT_SUBMIT_CROP_INSET_FLOOR_ENABLED, DOCUMENT_CROP_ASPECT_MIN, DOCUMENT_CROP_ASPECT_MAX, CARD_LIKE_MEASURED_CROP_MIN_AREA_RATIO, QUIET_ZONE_CLAMP_CUT_OFF_RISK_LOSS, SAFE_LIVE_QUAD_INSET_MIN, isCardLikeCropAspect, getDocumentCropShapeFamily, getDocumentCropSafetyThresholds, getDocumentCropSafetyAspectRatio, isDocumentCropAspectSafe, getMeasuredDocumentCropMinAreaRatio, hasExplicitDocumentCutOffReason, hasExplicitUnsafeCaptureReason, hasCaptureDocumentCutOffEvidence, hasMarginSafeDocumentCropEvidence, hasMarginSafeReliableCaptureQuad, hasUnsafeInsetReliableCaptureQuad, isCardLikeCaptureContext, isCardFrontCaptureContext, getCapturePageRecognitionText, hasTrustedMrzCaptureEvidence, hasTrustedCardFrontRecognitionReason, hasReadyCaptureCandidateDecision, hasReadySafeCardLiveEvidence, hasHardCaptureCutOffEvidence, hasNativeOverfullCaptureRisk, hasNativeClampedCaptureRisk, canTrustReadySafeCardEvidenceOverNativeUnsafeRisk, isDocumentCropVerified, getDocumentCropRejectedReason, assessDocumentCropCandidate, getDocumentCropReviewPolicy, getDocumentCropTrustTier, } from './document-crop-arbitration.js';
35
+ export type { GlareMaskRegion, SaturatedClusterCoverage, MaskSaturatedClustersResult, } from './glare-mask.js';
36
+ export { GLARE_SATURATION_LUMA, GLARE_CLUSTER_MIN_NEIGHBOR_RATIO, GLARE_DOMINANT_COVERAGE, computeSaturatedClusterCoverage, isGlareDominantRegion, maskSaturatedClusters, } from './glare-mask.js';
35
37
  export type { CapturePlacementShape, DocumentPlacementInput, DocumentPlacementDecision, DocumentPlacementReason, } from './document-placement.js';
36
38
  export { CAPTURE_READY_AREA_MIN_BY_SHAPE, RELAXED_CAPTURE_READY_AREA_MIN_BY_SHAPE, CAPTURE_READY_AREA_MAX_BY_SHAPE, CAPTURE_READY_CENTER_MAX_BY_SHAPE, CAPTURE_READY_SAFE_INSET_MIN, evaluateDocumentPlacement, } from './document-placement.js';
37
39
  export type { EdgeEnergyProfile } from './sobel.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/dist/esm/index.js CHANGED
@@ -17,10 +17,11 @@ export { getDocumentCaptureGeometryProfile, getDocumentReviewProfile, checkDocum
17
17
  export { analyzeImageMetadata } from './metadata-review.js';
18
18
  export { DOCUMENT_REVIEW_REGION_MIN_READABLE_WIDTH_PX, evaluateDocumentReviewQuality, hasNoCropClarityUncertainty, } from './review-quality.js';
19
19
  export { mapPreviewRectToImageCropWithDiagnostics, mapPreviewRectToImageCrop, getRotationToExpectedOrientation, buildCaptureNormalizationPlan, getDocumentCaptureFrameAspectRatio, } from './capture-normalization.js';
20
- export { decideCaptureTrust } from './capture-trust.js';
20
+ export { decideCaptureTrust, buildCaptureTrustDecisionSnapshot, buildCaptureTrustDiagnosticsSnapshot, } from './capture-trust.js';
21
21
  export { CAPTURE_ENVELOPE_SCHEMA_VERSION, CAPTURE_DECISION_ENVELOPE_KEY, decideSubmittedDocumentImage, isCaptureDecisionEnvelope, } from './capture-envelope.js';
22
22
  export { getDocumentProfile, normalizeDocumentProfileType } from './document-profiles.js';
23
- export { DEFAULT_CROP_CONFIDENCE_THRESHOLD, DEFAULT_RECTANGLE_CROP_CONFIDENCE_THRESHOLD, DEFAULT_SUBMIT_CROP_INSET_FLOOR_ENABLED, DOCUMENT_CROP_ASPECT_MIN, DOCUMENT_CROP_ASPECT_MAX, CARD_LIKE_MEASURED_CROP_MIN_AREA_RATIO, QUIET_ZONE_CLAMP_CUT_OFF_RISK_LOSS, SAFE_LIVE_QUAD_INSET_MIN, isCardLikeCropAspect, getDocumentCropShapeFamily, getDocumentCropSafetyThresholds, getDocumentCropSafetyAspectRatio, isDocumentCropAspectSafe, getMeasuredDocumentCropMinAreaRatio, hasExplicitDocumentCutOffReason, hasExplicitUnsafeCaptureReason, hasCaptureDocumentCutOffEvidence, hasMarginSafeDocumentCropEvidence, hasMarginSafeReliableCaptureQuad, hasUnsafeInsetReliableCaptureQuad, getCapturePageRecognitionText, hasTrustedMrzCaptureEvidence, hasTrustedCardFrontRecognitionReason, hasReadyCaptureCandidateDecision, hasReadySafeCardLiveEvidence, hasHardCaptureCutOffEvidence, hasNativeOverfullCaptureRisk, hasNativeClampedCaptureRisk, canTrustReadySafeCardEvidenceOverNativeUnsafeRisk, isDocumentCropVerified, getDocumentCropRejectedReason, assessDocumentCropCandidate, getDocumentCropReviewPolicy, getDocumentCropTrustTier, } from './document-crop-arbitration.js';
23
+ export { DEFAULT_CROP_CONFIDENCE_THRESHOLD, DEFAULT_RECTANGLE_CROP_CONFIDENCE_THRESHOLD, DEFAULT_SUBMIT_CROP_INSET_FLOOR_ENABLED, DOCUMENT_CROP_ASPECT_MIN, DOCUMENT_CROP_ASPECT_MAX, CARD_LIKE_MEASURED_CROP_MIN_AREA_RATIO, QUIET_ZONE_CLAMP_CUT_OFF_RISK_LOSS, SAFE_LIVE_QUAD_INSET_MIN, isCardLikeCropAspect, getDocumentCropShapeFamily, getDocumentCropSafetyThresholds, getDocumentCropSafetyAspectRatio, isDocumentCropAspectSafe, getMeasuredDocumentCropMinAreaRatio, hasExplicitDocumentCutOffReason, hasExplicitUnsafeCaptureReason, hasCaptureDocumentCutOffEvidence, hasMarginSafeDocumentCropEvidence, hasMarginSafeReliableCaptureQuad, hasUnsafeInsetReliableCaptureQuad, isCardLikeCaptureContext, isCardFrontCaptureContext, getCapturePageRecognitionText, hasTrustedMrzCaptureEvidence, hasTrustedCardFrontRecognitionReason, hasReadyCaptureCandidateDecision, hasReadySafeCardLiveEvidence, hasHardCaptureCutOffEvidence, hasNativeOverfullCaptureRisk, hasNativeClampedCaptureRisk, canTrustReadySafeCardEvidenceOverNativeUnsafeRisk, isDocumentCropVerified, getDocumentCropRejectedReason, assessDocumentCropCandidate, getDocumentCropReviewPolicy, getDocumentCropTrustTier, } from './document-crop-arbitration.js';
24
+ export { GLARE_SATURATION_LUMA, GLARE_CLUSTER_MIN_NEIGHBOR_RATIO, GLARE_DOMINANT_COVERAGE, computeSaturatedClusterCoverage, isGlareDominantRegion, maskSaturatedClusters, } from './glare-mask.js';
24
25
  export { CAPTURE_READY_AREA_MIN_BY_SHAPE, RELAXED_CAPTURE_READY_AREA_MIN_BY_SHAPE, CAPTURE_READY_AREA_MAX_BY_SHAPE, CAPTURE_READY_CENTER_MAX_BY_SHAPE, CAPTURE_READY_SAFE_INSET_MIN, evaluateDocumentPlacement, } from './document-placement.js';
25
26
  export { rgbaToGreyscale, rgbaToGreyscalePico, computeEdgeEnergyProfile, detectDocumentCropFromGrey, } from './sobel.js';
26
27
  export { rgbaToGreyInPlace, computeBrightness, computeSceneLightProfile, isSceneDark, computeLaplacianVariance, computeLaplacianVarianceFloat, computeEdgeEnergy, detectDocumentRect, computeFrameDiff, analyzeFrame, looksLikeDocument, } from './metrics.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -74,6 +74,12 @@ export interface DocumentLikelihoodResult {
74
74
  * (e.g. the back-side text-signature exclusion) in production.
75
75
  */
76
76
  cardFloorApplied?: boolean;
77
+ /**
78
+ * Whether destructive glare diagnostics blocked the card-family score floor.
79
+ * Telemetry only; callers should continue using glareDetected / review
80
+ * quality checks for user-facing glare behavior.
81
+ */
82
+ cardFloorBlockedByGlare?: boolean;
77
83
  /** Horizontal-edge dominance ratio used for the text-signature check. */
78
84
  textSignatureHRatio?: number;
79
85
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,+EAA+E;AAE/E,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,SAAS,EAAE,CAAC;IACZ,QAAQ,EAAE,CAAC;IACX,WAAW,EAAE,CAAC;IACd,KAAK,EAAE,CAAC;IACR,SAAS,EAAE,CAAC;IACZ,IAAI,EAAE,CAAC;CACC,CAAC;AA6JX,+EAA+E;AAE/E,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAC;AAClC,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAC;AAClC,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AACrC,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CAAC;AACtC,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AACrC,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC;AACpC,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,CAAC,kBAAkB;AAC7D,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAC3C,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAC3C,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAI,CAAC;AAChD,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,CAAC;AAC9C;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,CAAC;AAC/C,MAAM,CAAC,MAAM,mCAAmC,GAAG,EAAE,CAAC;AAEtD,+EAA+E;AAE/E,MAAM,CAAC,MAAM,8BAA8B,GAAG,EAAE,CAAC;AACjD,MAAM,CAAC,MAAM,qCAAqC,GAAG,CAAC,CAAC;AACvD,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAG,CAAC;AAC7C,MAAM,CAAC,MAAM,sCAAsC,GAAG,IAAI,CAAC;AAE3D,+EAA+E;AAE/E,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC;AAC/C,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAC,CAAC;AACrD,MAAM,CAAC,MAAM,sCAAsC,GAAG,CAAC,CAAC;AACxD,MAAM,CAAC,MAAM,uCAAuC,GAAG,CAAC,CAAC;AAEzD,+EAA+E;AAE/E,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAC;AACnC,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,+EAA+E;AAE/E,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,SAAS,EAAE,CAAC;IACZ,QAAQ,EAAE,CAAC;IACX,WAAW,EAAE,CAAC;IACd,KAAK,EAAE,CAAC;IACR,SAAS,EAAE,CAAC;IACZ,IAAI,EAAE,CAAC;CACC,CAAC;AAmKX,+EAA+E;AAE/E,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAC;AAClC,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAC;AAClC,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AACrC,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CAAC;AACtC,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AACrC,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC;AACpC,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,CAAC,kBAAkB;AAC7D,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAC3C,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAC3C,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAI,CAAC;AAChD,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,CAAC;AAC9C;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,CAAC;AAC/C,MAAM,CAAC,MAAM,mCAAmC,GAAG,EAAE,CAAC;AAEtD,+EAA+E;AAE/E,MAAM,CAAC,MAAM,8BAA8B,GAAG,EAAE,CAAC;AACjD,MAAM,CAAC,MAAM,qCAAqC,GAAG,CAAC,CAAC;AACvD,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAG,CAAC;AAC7C,MAAM,CAAC,MAAM,sCAAsC,GAAG,IAAI,CAAC;AAE3D,+EAA+E;AAE/E,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC;AAC/C,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAC,CAAC;AACrD,MAAM,CAAC,MAAM,sCAAsC,GAAG,CAAC,CAAC;AACxD,MAAM,CAAC,MAAM,uCAAuC,GAAG,CAAC,CAAC;AAEzD,+EAA+E;AAE/E,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAC;AACnC,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAC"}
@@ -3,5 +3,5 @@
3
3
  * version.json). Must match package.json — test-locked in
4
4
  * test/capture-guidance.test.mjs. Bump both together.
5
5
  */
6
- export declare const CAPTURE_INTELLIGENCE_CORE_VERSION = "0.2.11";
6
+ export declare const CAPTURE_INTELLIGENCE_CORE_VERSION = "0.2.13";
7
7
  //# sourceMappingURL=version.d.ts.map
@@ -3,5 +3,5 @@
3
3
  * version.json). Must match package.json — test-locked in
4
4
  * test/capture-guidance.test.mjs. Bump both together.
5
5
  */
6
- export const CAPTURE_INTELLIGENCE_CORE_VERSION = '0.2.11';
6
+ export const CAPTURE_INTELLIGENCE_CORE_VERSION = '0.2.13';
7
7
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mikashboks/capture-intelligence-core",
3
- "version": "0.2.11",
3
+ "version": "0.2.13",
4
4
  "description": "DOM-free algorithmic core for capture intelligence: document classification, edge detection, frame metrics, and quality checks",
5
5
  "type": "module",
6
6
  "main": "./dist/cjs/index.js",