SVD(奇异值分解算法)的C语言代码在网上可以找到,如《Numerical Recipes in C》一书所给出的代码:http://cacs.usc.edu/education/phys516/src/TB/svdcmp.c,同时也给出了Demo代码http://cacs.usc.edu/education/phys516/src/TB/singular.c。我下载了位置如下(svdcmp.c和singular.c一起用,singular.c为主函数,内含数据数组):
使用方法见博客:
https://blog.youkuaiyun.com/zhuiqiuk/article/details/69390357
另外还有C++/OpenCV/Eigen的三种实现,见博客https://blog.youkuaiyun.com/fengbingchun/article/details/72853757
它相关的代码我已经下载了,如上图中,在Eigen_Test-master.zip中。另一个NN_Test-master.zip是比较牛逼的c实现的人工智能的算法。
svd详细求解原理及其步骤最好参见:https://www.cnblogs.com/endlesscoding/p/10033527.html
部分截图如下: