My Sample Collection

AUTOMATED SUB ACCOUNT

Smart Search

Search photos by face.

Query Params Supported (default values are in italics)

model: embedding generation model to use. [facenet|mobilenet|efficientnet]

cache: whether to use IndexedDB cache (prevents the same photo needing to be processed by the FaceDetector more than once). Set this to false every time you change a parameter that requires photos to be reprocessed, which is anything except clustering tweaks. [true|false]

algorithm: clustering algorithm to use. [hdbscan|agnes|threshold|threshold_v2]

faceconfidence: minimum confidence (percentage) score for a face to be considered valid. [0..99..100]

refinement: whether to run the cluster refinement pipeline (`mergeNearbyClusters` -> `reassignStrayDetections` -> `splitSuspiciousClusters` -> `enforceUniquePhotoPerCluster` -> `refreshCentroidsAndConfidence`) on the initial clustering results. [true|false]

posepenalty: maximum pose penalty (0 = frontal, 100 = extreme angle) for a face to be considered valid. [0..85..100]

blurthreshold: minimum hybrid blur score required for a face to be considered a keeper (higher values are stricter). Default: 400. [0..n]

photosize: size of the photo to process. [thumb|small|medium|large|xlarge|xxlarge]

clusterminsize: minimum number of faces required to form a cluster. [1..3..n]

clusterminsamples: sets how many neighbors a face embedding must have inside the clusterminsize radius to be treated as a core point. Higher values demand denser groups (fewer clusters, more noise); lower values accept sparser groups (more clusters, less noise filtering). [1..3..n] (only relevant for `hdbscan` algorithm)

alignfaces: whether to align faces (level eyes horizontally) before processing. [true|false]

debugfaces: whether to generate aligned/normalized debug face crops for inspection views. [true|false]

embeddingbatchsize: how many normalized face tensors to batch through the embedding model per inference call. [1..16..n]

facesimilaritythreshold: minimum similarity a face must have with the nearest centroid before it can join that cluster when using `threshold` or `threshold_v2` algorithm. [0..0.8..1]

findsimilarfacesimilaritythreshold: minimum cosine similarity a face must have with another face to be considered the same when using the `findSimilarFaces` method. [0..0.45..1]

workerscaleprofile: worker auto-scaling profile. [conservative|balanced|aggressive]

workerinitial: optional override for initial worker count. Must be a positive integer. [1..n]

workermin: optional override for minimum worker count. Must be a positive integer. [1..n]

workermax: optional override for maximum worker count. Must be a positive integer. [1..n]

mergenearbyclustersconfig: configuration options for the `mergeNearbyClusters` step in the cluster refinement pipeline. [{"skip":false,"cosThresh":0.6,"gapMin":0.05,"coreAff":0.4,"coreK":2,"mutualNN":true}] (you do not have to set all values, just the ones you wish to change from default).

skip: When true, skips this step entirely.
cosThresh: Smallest centroid cosine similarity to allow merging; higher values merge only near-identical clusters.
gapMin: Required similarity lead the top match must hold over the runner-up; larger gaps avoid ambiguous merges.
coreAff: Average similarity between top core members across both clusters; raises the bar for how cohesive a merge must be.
coreK: Number of core-member similarities to average when computing coreAff; bigger K smooths the affinity score.
mutualNN: When true, both clusters must pick each other as nearest neighbors before merging proceeds.
						

reassignstraydetectionsconfig: configuration options for the `reassignStrayDetections` step in the cluster refinement pipeline. [{"skip":false,"baseThreshold":0.52,"slope":0.08,"maxThreshold":0.62,"margin":0.05}] (you do not have to set all values, just the ones you wish to change from default).

skip: When true, skips this step entirely.
baseThreshold: Minimum cosine similarity (0..1) a face must have with the nearest centroid before it can join that cluster, assuming ideal pose.
slope: How aggressively the similarity requirement increases as pose penalty rises; higher values make off-angle faces require much higher similarity.
maxThreshold: Hard ceiling on that adaptive threshold so poor poses cannot force it above this limit.
margin: Minimum similarity gap the best centroid must have over the runner-up; enforces a clear winner before reassigning a face.
						

splitsuspiciousclustersconfig: configuration options for the `splitSuspiciousClusters` step in the cluster refinement pipeline. [{"skip":false,"probMedCut":0.4,"sizeMin":6,"acceptCos":0.72,"acceptMargin":0.06,"partMin":3}] (you do not have to set all values, just the ones you wish to change from default).

skip: When true, skips this step entirely.
probMedCut: median pairwise similarity below which a cluster is considered for splitting.
sizeMin: minimum cluster size to be considered for splitting.
acceptCos: minimum centroid similarity for a sub-cluster to be accepted as valid.
acceptMargin: required margin between best and runner-up centroid similarities for a sub-cluster to be accepted.
partMin: minimum number of faces required to form a sub-cluster.
						


Tips

Hover over any face in the DEBUG: SHOW FACE CLUSTERS clusters listing to see the aligned face used for embedding generation (requires debugfaces=true).



Definitions


Roll: measures how much the head is tilted sideways by looking at the angle between the two eyes.
Pitch: measures how much the head nods up/down. It compares the distance from the eyes to the nose against the nose to the mouth.
Yaw: measures how much the head turns left/right. It takes the maximum of three cues—nose offset from the eye/mouth midline, difference in nose-to-eye distances, difference in nose-to-mouth-corner distances—then scales that value by a configurable “bad yaw” threshold before clamping.














Powered by Pixieset