Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Image labeling performance using CRF

I need to develop an image labeling application, for this task I'm considering using Conditional Random Fields (CRF) over a set of superpixels, there exists quite a few papers that point out this technology as the state of the art for this task. As usual the task could be devided into two tasks:

  • Training model: which for this problem would be obtaining the parameter vector 'w', using for example
  • Testing: which would be obtaining the most feasible label assignment of a given set of superpixels, i.e argmax(P(y|x))

I'm aware of training-time to be quite high, however I have not found anything about testing-time nor performance, does anyone have and idea of how much time could take the testing problem? I suppose it will depend on the number of labels, image size, implementation, hardware, etc

like image 633
jabaldonedo Avatar asked Feb 25 '26 23:02

jabaldonedo


1 Answers

Testing is slowish because you still have to solve a graph cuts problem (but nothing like training). There is an implementation you can try out at http://drwn.anu.edu.au/drwnProjMultiSeg.html (you have probably seen Stephen Gould's papers).

I still have the log file. but it is a bit hard to interpret so the following may not be totally accurate. On a super fast machine, I think it took about:

  • 4.5 hours cpu time to train 20 classes on 276 images from MSRC dataset
  • 50 mins cpu time to classify 256 images, most of which was spent doing alpha expansion
like image 58
Bull Avatar answered Feb 28 '26 22:02

Bull



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!