Never a bare MATCH. The screen-graphics trope shows recognition as infallible: a face, a flicker, MATCH. Here the verdict always carries the score, the margin over the runner-up and how many records were searched, because a score means nothing without the other two. Below threshold, with no search size, or with no runner-up to measure a margin against, it says NO DETERMINATION; two candidates too close to call are AMBIGUOUS and shown side by side, neither picked. The record appears only on a match, and a field below its own confidence reads WITHHELD. The signatures are feature vectors drawn as discs; where a candidate differs from the probe, the bar is marked.
import 'overscan'
import 'overscan/overscan.css'
<ov-match src="models/match-clear.json"></ov-match>import { OvMatch } from 'overscan/react'
<OvMatch src="models/match-clear.json" />import { OvMatch } from 'overscan/vue'
<OvMatch src="models/match-clear.json" />import OvMatch from 'overscan/svelte/OvMatch.svelte'
<OvMatch src="models/match-clear.json" />The signature is data, drawn five ways. Each mark is one
value of the feature vector; signature chooses how it is drawn and
changes nothing else. This probe is missing every seventh feature: in every
mode the missing ones are gaps, counted under the disc, never drawn as
zero and never compared, so they can be marked neither alike nor different.
import 'overscan'
import 'overscan/overscan.css'
<ov-match src="models/match-low.json"></ov-match>import { OvMatch } from 'overscan/react'
<OvMatch src="models/match-low.json" />import { OvMatch } from 'overscan/vue'
<OvMatch src="models/match-low.json" />import OvMatch from 'overscan/svelte/OvMatch.svelte'
<OvMatch src="models/match-low.json" />import 'overscan'
import 'overscan/overscan.css'
<ov-match src="models/match-ambiguous.json"></ov-match>import { OvMatch } from 'overscan/react'
<OvMatch src="models/match-ambiguous.json" />import { OvMatch } from 'overscan/vue'
<OvMatch src="models/match-ambiguous.json" />import OvMatch from 'overscan/svelte/OvMatch.svelte'
<OvMatch src="models/match-ambiguous.json" />import 'overscan'
import 'overscan/overscan.css'
<ov-match src="models/match-nosize.json"></ov-match>import { OvMatch } from 'overscan/react'
<OvMatch src="models/match-nosize.json" />import { OvMatch } from 'overscan/vue'
<OvMatch src="models/match-nosize.json" />import OvMatch from 'overscan/svelte/OvMatch.svelte'
<OvMatch src="models/match-nosize.json" />