@Reference(type=Article,
author={"Belhumeur, Peter N.","Hespanha, Jo\\~{a}o P.","Kriegman, David J."},
title="Eigenfaces vs. Fisherfaces: Recognition Using Class Specific Linear Projection",
year="1997",
journal="IEEE Trans. Pattern Anal. Mach. Intell.",
pages={"711","","720"},
url="http://dx.doi.org/10.1109/34.598228",
month="July",
number="7",
publisher="IEEE Computer Society",
volume="19",
customData={"issn","0162-8828","numpages","10","doi","10.1109/34.598228","acmid","261512","address","Washington, DC, USA","keywords","Appearance-based vision, face recognition, illumination invariance, Fisher\'s linear discriminant."})
public class FisherImages
extends Object
implements BatchTrainer<org.openimaj.util.pair.IndependentPair<?,org.openimaj.image.FImage>>, FeatureExtractor<DoubleFV,org.openimaj.image.FImage>, org.openimaj.io.ReadWriteableBinary
| Constructor and Description |
|---|
FisherImages(int numComponents)
Construct with the given number of components.
|
| Modifier and Type | Method and Description |
|---|---|
byte[] |
binaryHeader() |
DoubleFV |
extractFeature(org.openimaj.image.FImage object) |
double[] |
getBasisVector(int index)
Get a specific basis vector as a double array.
|
void |
readBinary(DataInput in) |
<KEY> void |
train(org.openimaj.data.dataset.GroupedDataset<KEY,? extends org.openimaj.data.dataset.ListDataset<org.openimaj.image.FImage>,org.openimaj.image.FImage> data)
Train on a grouped dataset.
|
void |
train(List<? extends org.openimaj.util.pair.IndependentPair<?,org.openimaj.image.FImage>> data) |
void |
train(Map<?,? extends List<org.openimaj.image.FImage>> data)
Train on a map of data.
|
org.openimaj.image.FImage |
visualise(int num)
Draw an eigenvector as an image
|
void |
writeBinary(DataOutput out) |
public FisherImages(int numComponents)
numComponents - the number of componentspublic void readBinary(DataInput in) throws IOException
readBinary in interface org.openimaj.io.ReadableBinaryIOExceptionpublic byte[] binaryHeader()
binaryHeader in interface org.openimaj.io.ReadableBinarybinaryHeader in interface org.openimaj.io.WriteableBinarypublic void writeBinary(DataOutput out) throws IOException
writeBinary in interface org.openimaj.io.WriteableBinaryIOExceptionpublic void train(Map<?,? extends List<org.openimaj.image.FImage>> data)
data - the datapublic <KEY> void train(org.openimaj.data.dataset.GroupedDataset<KEY,? extends org.openimaj.data.dataset.ListDataset<org.openimaj.image.FImage>,org.openimaj.image.FImage> data)
KEY - The group typedata - the datapublic void train(List<? extends org.openimaj.util.pair.IndependentPair<?,org.openimaj.image.FImage>> data)
train in interface BatchTrainer<org.openimaj.util.pair.IndependentPair<?,org.openimaj.image.FImage>>public DoubleFV extractFeature(org.openimaj.image.FImage object)
extractFeature in interface FeatureExtractor<DoubleFV,org.openimaj.image.FImage>public double[] getBasisVector(int index)
index - the index of the vectorpublic org.openimaj.image.FImage visualise(int num)
num - the index of the eigenvector to draw.