I would like to ask about this function in OpenCV:

cvTermCriteria( CV_TERMCRIT_ITER | CV_TERMCRIT_EPS, 20, .3 )

How do I get more accurate results - do I need to increase the value of epsilon or decrease it?

  • $\begingroup$ look at my comment . $\endgroup$ – rɑːdʒɑ May 21 '13 at 15:51
  • $\begingroup$ (cv.CV_TERMCRIT_EPS, 0, 0.1) then cvterminate when epsilon reaches 0.1 $\endgroup$ – rɑːdʒɑ May 21 '13 at 16:28

This termination criteria tells the algorithm to stop when it has either done 20 iterations or when epsilon is greater than .3. You can play with these parameters for speed vs accuracy but these values work pretty well in many situations.

So if you want to improve accuracy then you will get more accurate value with more iterations but the time taken for doing such iterations will be improved , I mean speed will be reduced.

  • $\begingroup$ if I increase the number of epsilon (.3) I will get more accurate results???? ... or If I reduce it ? $\endgroup$ – seereen May 21 '13 at 15:24
  • $\begingroup$ No, if epsilon value > .3 then it will stop the operation.The better way to improve accuracy is increase the number iterations, I mean > 20 . $\endgroup$ – rɑːdʒɑ May 21 '13 at 15:50
  • $\begingroup$ even though I want to know what is the effect of epsilon value , I will try to increase the iteration number $\endgroup$ – seereen May 21 '13 at 16:03
  • $\begingroup$ epsilon stands here for Required accuracy. you can use both Number of iterations and epsilon values for accuracy. If you place .4 then you will get better accuracy than .3 . $\endgroup$ – rɑːdʒɑ May 21 '13 at 16:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.