0

ポイントのセットへの二次曲線のフィッティングを必要とするやや複雑なアルゴリズムがあります。この 2 次は、そのパラメータ化によって与えられます。(u, v, f(u,v))ここで、f(u,v) = au^2+bv^2+cuv+du+ev+fです。f(u,v)この関数が従わなければならない厳密に6つの制約のセットがあるため、関数の係数を見つける必要があります。問題は、この一連の制約は、 のような問題を引き起こしA*x = bますが、一意のソリューションを保証するために完全に適切に動作するわけではないことです。

したがって、簡単に言うと、 alglib の機能を使用して、 の疑似逆数を何らかの方法で決定するか、ベクトルAに最適なものを直接見つけたいと思います。x

SVD の計算とは別に、最小二乗法の意味でシステムを解くことができる、このライブラリに実装されたより直接的なアルゴリズムがありますかinv(transpose(A)*A)*transpose(A)*b?マトリックス?

4

1 に答える 1

1

ドキュメントを注意深く閲覧することで、答えが見つかりました。

rmatrixsolvels( A, noRows, noCols, b, singularValueThreshold, info, solverReport, x)

ドキュメントには、特異値のしきい値は、SVD 分解 S 行列からの特異値を、0その値がそれを下回る場合に設定するクランプしきい値であると記載されています。したがって、これは 0 から 1 の間のスカラーでなければなりません。

うまくいけば、それは他の誰かにも役立つでしょう。

于 2013-05-18T14:05:01.807 に答える