updated embedding notes

master
Vladimir Mandic 2020-11-23 08:40:01 -05:00
parent 64516d31f0
commit 6a8806585c
2 changed files with 14 additions and 4 deletions

@ -1,7 +1,7 @@
# @vladmandic/human
Version: **0.9.9**
Version: **0.9.10**
Description: **Human: 3D Face Detection, Face Embedding & Recognition, Body Pose Tracking, Hand & Finger Tracking, Iris Analysis, Age & Gender & Emotion Prediction & Gesture Recognition**
Author: **Vladimir Mandic <mandic00@live.com>**
@ -10,7 +10,10 @@ Repository: **<git+https://github.com/vladmandic/human.git>**
## Changelog
### **HEAD -> main, origin/main, origin/HEAD** 2020/11/21 mandic00@live.com
### **HEAD -> main, origin/main, origin/HEAD** 2020/11/23 mandic00@live.com
### **0.9.10** 2020/11/21 mandic00@live.com
- changed build for optimized node & browser
### **0.9.9** 2020/11/21 mandic00@live.com
- new screenshots

@ -36,5 +36,12 @@ Embedding vectors are calulated values uniquely identifying a given face and pre
They can be stored as normal arrays and reused as needed
Simmilarity function is based on Eucilidean distance between all points in vector
*Eucilidean distance is a square root of sum of squared distances between each point in (each value in 192-member array)*
Simmilarity function is based on *Eucilidean distance* between all points in vector
*Eucliean distance is limited case of Minkowski distance with order of 2*
*[Minkowski distance](https://en.wikipedia.org/wiki/Minkowski_distance) is a nth root of sum of nth powers of distances between each point in (each value in 192-member array)*
Changing `order` can make simmilarity matching more or less sensitive:
```js
const distance = ((firstEmbedding.map((val, i) => (val - secondEmbedding[i])).reduce((dist, diff) => dist + (diff ** order), 0) ** (1 / order)));
```