2020-01-30 01:38:32 -0500 received badge ● Popular Question (source) 2014-04-25 04:07:32 -0500 asked a question flann::hierarchicalClustering get labels i am looking for some clustering with dynamic cluster count. i want to use flann::hierarchicalClustering. iam not directly interestet on the cluster itself but on the label of the input data. how to get the labels? searching for the nearest cluster of each input vector? that seems to be doubled work since this internally should be calculated already i expected some label output parameter like the bestLabels argument in kmeans. or is there another (possibly better) way to cluster the data with dynamicly determined cluster count? 2014-02-12 08:05:51 -0500 received badge ● Autobiographer 2014-02-12 03:27:56 -0500 commented question why is cv::invert so incredibly slow? the first timings are release only the inv(R'R)R' calculation was done in debug. obviously the inv(R'R) should have the same timing as the fist one since it also has a 465x465 matrix to invert. only the timing of the matrix multiplication is added to the time. i added new timings from newer ocv version. i previously used the old one since it is the one we use in the current project so i did not wanted to become incompatible (also we used ocv with the IPP lib - dont know if this would have any influence). the new timings are with a new out of the box opencv 2014-02-11 05:58:08 -0500 received badge ● Editor (source) 2014-02-11 05:36:30 -0500 asked a question why is cv::invert so incredibly slow? hi, why is cv::invert so incredibly slow? inverting a 465x465 matrix using svd takes 2minutes. without svd it still takes ~2sec octave is much faster i try to invert a 48984x465 matrix (SVD) and it takes a lot of time (it does not even completed yet) to invert. using octaves pinv finishes in <20sec; calculating inv(R'*R)*R' in octave takes <10sec in opencv (without SVD) it also took much more time than my patience allowed me to wait. I use 2.4.1 has anyone a hint? edit: the second test (inv(R'R)R') was done in debug. obviously it should finish in same time as the first one) Edit2: i did some tests with the 2.4.8 ocv version: inverting 465 x 465 matrix without SVD took 0.5s inverting 465 x 465 matrix with SVD took 5s inverting 48984 x 465 matrix with SVD took 10min inverting 48984 x 465 matrix without SVD (inv(R'R)R') took 18s (only measured the inv(R'*R) part) indeed there is a speed up in later opencv versions. octave timings: tic; inv(rand(465,465)); toc -> Elapsed time is 0.0780001 seconds. tic; pinv(rand(465,465)); toc -> Elapsed time is 1.232 seconds. tic; pinv(rand(48984,465)); toc -> Elapsed time is 15.023 seconds. R = rand(48984,465); tic;inv(R'*R);toc --> Elapsed time is 0.889 seconds. In comparistion to octave that afaik also uses SVD to calculate pseudoinverses opencv implementation seems to be very slow. But also the normal inversion does not compare very well. 2013-06-03 05:58:33 -0500 commented answer fitLine always crashes @berak i have not got any exception that sounds like that. The exception that occurred was on crt or os level. 2013-06-03 05:30:23 -0500 commented answer fitLine always crashes Thank you very much. But now, please point me to the part of documentation that tells me that only float input data is supported. 2013-06-03 05:27:07 -0500 received badge ● Scholar (source) 2013-06-03 05:27:04 -0500 received badge ● Supporter (source) 2013-06-03 04:37:14 -0500 asked a question fitLine always crashes Hi i try to use fitLine but it always crashes. I already tried to modify input data (cv::Mat, std::vector) and output data(cv::Vect4d, std::vector(2), std::vector(4)) formats. Here is my Code: std::vector points; // [...] // push_back some (26) points std::vector line(4,0); cv::fitLine(points,line,CV_DIST_L2,0,0.01,0.01);  now it crashes. Iam using winxp VS2010 with a opencv 2.41 build I got no call stack and the crash seems to happen in kernel32.dll xstring Where is my failure? 2012-09-03 05:23:59 -0500 commented question cv::KalmanFilter some questions thanks for the link 2012-09-03 05:23:44 -0500 commented answer cv::KalmanFilter some questions thanks, i know about kalman filters. I wrote my own now, that fits my needs. There is no need to store a post and a pre state (beside to debugging). Normally there is only one state that is changed by predict and update step. if you read the state you always get the best possible estimation regardless whether there was an update or not. Sammy already posted a link to a bug report. 2012-08-30 15:32:12 -0500 received badge ● Student (source) 2012-08-30 05:35:21 -0500 asked a question cv::KalmanFilter some questions Hi, I have some questions about the Kalman filter implementation. I have an object that contains some state(1d) that should be tracked with an 1D kalman filter. The state of the Kalman should contain the state and its first derivative. so the Kalmanfilter have to be initilized with init(2,1); My Questions: qhich of the public members is the current state? statePre or statePost? why are there two states? and which holds the current covariances? in my understanding the kalman just needs one state (s, s') and a covariance matrix(2x2) The whole process works like this:  init: state <- init from measurement and default derivative covar <- initial Covars from measurement variance predict state <- state * transition covar <- new covar (build from current covar and process noise) update state <- fancy calculations using oldstate, newstate and variances covar <- more fancy calculations  so state and covar always contain the correct data. so why cv::Klamnafilter requires statePre and statePost? which one contains the valid state? what happens in the following scenario:  init predict update predict // no measurement predict // no measurement predict update  how does later parts of algorithm should know if they should read statePre or statePost? have i allways to store if there was an update or not and read the other member if i want the current state? That are all the temp matrices? The class design looks a bit awkward to me. Thanks Vlad