@@ -22,25 +22,19 @@ public static class MatrixOpenCvExtensions
22
22
/// </summary>
23
23
public static bool SolveLinear ( this Matrix < double > A , Vector < double > b , out Vector < double > x , DecompTypes method )
24
24
{
25
- var success = false ;
26
- lock ( OpenCvLock . Lock )
27
- {
28
- // Ax = b
29
- // x = inv(A) * b
30
- // M*K x K*N = M*N
31
- int M = ( int ) A . SY ; //Rows
32
- int K = ( int ) A . SX ; //Cols
33
- int N = 1 ;
34
-
35
- x = new Vector < double > ( K * N ) ;
36
- var mA = CvMat . FromPixelData ( M , K , MatType . CV_64FC1 , A . Array ) ; //: A (M*K)
37
- var mX = CvMat . FromPixelData ( K , N , MatType . CV_64FC1 , x . Array ) ; //: x (K*N)
38
- var mB = CvMat . FromPixelData ( M , N , MatType . CV_64FC1 , b . Array ) ; //: b (M*N)
39
-
40
- success = OpenCvSharp . Cv2 . Solve ( mA , mB , mX , method ) ;
41
- }
42
-
43
- return success ;
25
+ // Ax = b
26
+ // x = inv(A) * b
27
+ // M*K x K*N = M*N
28
+ int M = ( int ) A . SY ; //Rows
29
+ int K = ( int ) A . SX ; //Cols
30
+ int N = 1 ;
31
+
32
+ x = new Vector < double > ( K * N ) ;
33
+ var mA = CvMat . FromPixelData ( M , K , MatType . CV_64FC1 , A . Array ) ; //: A (M*K)
34
+ var mX = CvMat . FromPixelData ( K , N , MatType . CV_64FC1 , x . Array ) ; //: x (K*N)
35
+ var mB = CvMat . FromPixelData ( M , N , MatType . CV_64FC1 , b . Array ) ; //: b (M*N)
36
+
37
+ return Cv2 . Solve ( mA , mB , mX , method ) ;
44
38
}
45
39
46
40
/// <summary>
0 commit comments