Table of Contents

Class MACE

Namespace
Emgu.CV.Face
Assembly
Emgu.CV.dll

Minimum Average Correlation Energy Filter useful for authentication with (cancellable) biometrical features. (does not need many positives to train (10-50), and no negatives at all, also robust to noise/salting)

public class MACE : SharedPtrObject, IDisposable, IAlgorithm
Inheritance
MACE
Implements
Inherited Members
Extension Methods

Constructors

MACE(int)

Create a new MACE object

public MACE(int imgSize)

Parameters

imgSize int

images will get resized to this (should be an even number)

MACE(string, string)

Read MACE from storage

public MACE(string fileName, string objName = "")

Parameters

fileName string

Build a new MACE instance from a pre-serialized FileStorage

objName string

Optional top-level node in the FileStorage

Properties

AlgorithmPtr

Pointer to the unmanaged Algorithm object

public nint AlgorithmPtr { get; }

Property Value

nint

Methods

DisposeObject()

Release the unmanaged memory associated with this BIF

protected override void DisposeObject()

Salt(string)

optionally encrypt images with random convolution

public void Salt(string passphrase)

Parameters

passphrase string

a crc64 random seed will get generated from this

Same(IInputArray)

correlate query img and threshold to min class value

public bool Same(IInputArray query)

Parameters

query IInputArray

a Mat with query image

Returns

bool

True if the query is the same

Train(IInputArrayOfArrays)

train it on positive features compute the mace filter: h = D(-1) * X * (X(+) * D(-1) * X)(-1) * C also calculate a minimal threshold for this class, the smallest self-similarity from the train images

public void Train(IInputArrayOfArrays images)

Parameters

images IInputArrayOfArrays

A VectorOfMat with the train images