This repository provides implementation of the following algorithms:
-
PCP via ALM method: Robust Principal Component Analysis?, Candes et.al., 2009
-
Stable PCP via alternating directions (not accelerated): Stable Principal Component Persuit, Zhou et. al., 2010
-
PCP with compressed data via alternating directions: Robust PCA with compressed data, Ha and Barber, 2011
-
Iterated Robust CUR: Rapid Robust Principal Component Analysis: CUR Accelerated Inexact Low Rank Estimation, Cai et. al, 2021
Example of solving Principle Component Pusuit using Augmented Lagrangian Multipliers method for decomposing video frames (1-st row) into static background (2-nd row) and dynamic foreground (3-rd row)
Example of solving Principle Component Pusuit using Augmented Lagrangian Multipliers method for decomposing face images (1-st row) into low-rank face approximation (2-nd row) and sparse shadows (3-rd row)
We compare different tasks for removing shadows from face images and extracting background/foreground from video frames:
- PCP via ALM
- Stable PCP via alternating directions
- PCP with compressed data via alternating directions
- PCP via Iterated Robust CUR
We also demonstrate RPCA with compressed data by applying it to compressed YALE face dataset.
notebooks/
— contains experiments in form of jupyter notebooks
├── demo_mall.ipynb
— demonstration of extracting activities from video surveillance
├── demo_yale.ipynb
— demonstration of removing shadows from face images
├── RPCA with compressed data.ipynb
— demonstration solving RPCA with compressed images\data/
— folder for relevant datasetsrobustpca/
— related source code with implementation of algorithmsfigs/
— pictures for the results partruns/
— bash scripts to run experiments
Setup the environment and install package:
conda create -n robustpca python=3.9
conda activate robustpca
pip install poetry
poetry install
chmod +x **.sh
Download data for experiments:
wget -nc http://vision.ucsd.edu/extyaleb/CroppedYaleBZip/CroppedYale.zip -P data
unzip data/CroopedYale.zip -d data
wget https://personal.ie.cuhk.edu.hk/\~ccloy/files/datasets/mall_dataset.zip -P data
unzip data/mall_dataset.zip -d data