Basic PCA based log-Likelihood Classifier

PCA algorithm suitable for detection / recognition of 2D image "objects"
ダウンロード: 9.4K
更新 2010/2/11

ライセンスの表示

Introduction:
Many image problems require some kind of detection of objects, in which there is a natural variation in appearance of the objects between the images. For instance, face recognition, lesion detection, nerve channel segmentation.

These image problems can be solved by manually annotating of image objects to train a model which recognize normal object appearance. This can be done with a PCA based maximum likelihood classifier.

Software Description:
We provide here a basic PCA classifier for a two class classification problem. Two class is the most common, is an pixel a brain lesion or not?, is this face of the home owner or not?

Multiple Sclerosis example:
An example is given, with some multimodal MRI scans from Multiple Sclerosis patients, in which the brain lesions of two patients are annotated and in the third are detected by the PCA model. This example uses the gray-value regions and gray-value derivatives as feature vectors. But by using more or other features this example can be easily extended to your own recognition / detection example.

This example uses some c-code to get the image regions for speed improvement.

Literature:
- Kroon, D.J. and van Oort, E.S.B. and Slump, C.H. "Multiple Sclerosis Detection in Multispectral Magnetic Resonance Images with Principal Components Analysis"
- Kauffman et al. "Grip-pattern recognition for smart guns"

Final:
Try/study and than extend the example to your own application.

Please report bugs, success and suggestions.

引用

Dirk-Jan Kroon (2025). Basic PCA based log-Likelihood Classifier (https://www.mathworks.com/matlabcentral/fileexchange/24817-basic-pca-based-log-likelihood-classifier), MATLAB Central File Exchange. に取得済み.

MATLAB リリースの互換性
作成: R2009a
すべてのリリースと互換性あり
プラットフォームの互換性
Windows macOS Linux
カテゴリ
Help Center および MATLAB AnswersDimensionality Reduction and Feature Extraction についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
バージョン 公開済み リリース ノート
1.2.0.0

Changed (I'm not entirely sure if it is correct) :
[U,S] = svd(G);
Geigenvalue=diag(S).^2
to
Geigenvalue=diag(S);

1.1.0.0

Linux Ubuntu Tested

1.0.0.0