OpenCV  3.4.4
Open Source Computer Vision
samples/cpp/pca.cpp

An example using PCA for dimensionality reduction while maintaining an amount of variance