問題描述
使用 CRF 的圖像標記性能 (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
參考解法
方法 1:
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
(by jabaldonedo、Bull)