I am working on my thesis and working machine learning. The overall problem is Detecting and Recognition of Road Inventory.

For my research part I am looking into decision trees, especially Hough forests. There are some areas where I need more information and if anyone else have worked with this I might save some time and get more time to do new scientific research.

So here are a few questions related to the area, that I would like to discuss. (I will reference this question in my thesis if anyone bring up some scientific research).

Based on Hough Forests for object detection, tracking and action recognition by Gall, Juergen et al. and other related articles using random forests (forests of decisions trees) most of what I have come across have described and used training splits based on checking if the difference of two features (etc. the x-gradient of the p and q pixel position) in a image patch are lower then a split value tau. Then the best split are found where the information gain is largest, (i.e. splitting the data into the two most distinctive subgroups).

A few years earlier then these articles, from what I get it all origin from the work of Breiman. The implementation is available in OpenCV.

  1. Have there been any work in the two methods, the OpenCV implementation and the outlined idea in Gall et al. The overall difference is the way the split are done. Gall et al compare two features at p and q, OpenCV select one feature and find the best split for it. Is one of the methods to prefer?
  2. The hole scale part of Gall et al. work. From what I get, all positive objects are scaled such longest spatial dimension to a unit size around 100 pixel. I get the reason for doing it, but when taking into fact that the test image are not scaled at all, will this not mean they are trying to match an image patch of size X with dictionary image patches of another size. Cant this be done in a better way?

Might create follow up questions as my work continues, but I would like to discuss these thins, as I find them interesting for my project and I am sure there are people out there who worked tons of hours in similar topics.


I am also doing some research on object detection with Hough forests, so I have some observations on the method.

  1. The split rule is not written in stone. The reason axis-aligned split rules (one coordinate) are preferred is that they are very simple to evaluate. Taking two coordinate differences is also very simple. However, I found that these split conditions are sometimes too weak, especially for the regression part of the forest. Using more general linear splits on a random subset of the coordinates works better for me (of course, at the expense of computation time).
  2. I am trying to avoid the scaling, that is to train the forest on all relevant scales at once. The main reason is efficiency at test time, because to utilize the forest as Gall et al suggest, you have to process the image at multiple scales, which is time consuming. Another reason is that due to perspective effects, scaling doesn't bring the appearance of objects to be similar. I should note that several authors found that training a classifier for multiple scales of appearance is too difficult. I am still not sure about it.
| cite | improve this answer | |
  • $\begingroup$ I agree with you, i forgot about this question, i have already turned in my paper. But I do agree on your findings. I would love to see some work in a scale-space solution without the image resizing. Some late night i was considering to use different features instead of what is being used by Gall et al. I remember learning about "Basic Image Features" in a course. They describe some gradient information for each pixel accross scales. But feel free to come back here if you get some nice findings. $\endgroup$ – Poul K. Sørensen Oct 3 '12 at 10:11

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.