FFmpeg
Data Structures | Macros | Functions
pca.c File Reference
#include "common.h"
#include "mem.h"
#include "pca.h"

Go to the source code of this file.

Data Structures

struct  PCA
 

Macros

#define ROTATE(a, i, j, k, l)
 

Functions

PCAff_pca_init (int n)
 
void ff_pca_free (PCA *pca)
 
void ff_pca_add (PCA *pca, const double *v)
 
int ff_pca (PCA *pca, double *eigenvector, double *eigenvalue)
 

Detailed Description

principal component analysis (PCA)

Definition in file pca.c.

Macro Definition Documentation

◆ ROTATE

#define ROTATE (   a,
  i,
  j,
  k,
 
)
Value:
{\
double g=a[j + i*n];\
double h=a[l + k*n];\
a[j + i*n]=g-s*(h+g*tau);\
a[l + k*n]=h+s*(g-h*tau); }

Function Documentation

◆ ff_pca_init()

PCA* ff_pca_init ( int  n)

Definition at line 39 of file pca.c.

Referenced by main().

◆ ff_pca_free()

void ff_pca_free ( PCA pca)

Definition at line 62 of file pca.c.

Referenced by ff_pca_init().

◆ ff_pca_add()

void ff_pca_add ( PCA pca,
const double v 
)

Definition at line 69 of file pca.c.

Referenced by main().

◆ ff_pca()

int ff_pca ( PCA pca,
double eigenvector,
double eigenvalue 
)

Definition at line 81 of file pca.c.

Referenced by main().

s
#define s(width, name)
Definition: cbs_vp9.c:198
g
const char * g
Definition: vf_curves.c:128
a
The reader does not expect b to be semantically here and if the code is changed by maybe adding a a division or other the signedness will almost certainly be mistaken To avoid this confusion a new type was SUINT is the C unsigned type but it holds a signed int to use the same example SUINT a
Definition: undefined.txt:41
i
#define i(width, name, range_min, range_max)
Definition: cbs_h2645.c:256
h
h
Definition: vp9dsp_template.c:2070