How can you carry out experiments and compare with other algorithms in computer vision research (object detection, recognition, tracking etc)?
-
For object/action detection, categorization, recognition, tracking , etc. in computer vision, a general flow may be (1)pre-processing;(2)feature extraction;(3) applying task-dependent machine learning algorithms (training and testing);(4) performance evaluation. It seems to have to do all the things, even if one just focuses on feature extraction/design or specific machine learning algorithms. The final performance is dependent on all the thingshttp://things.To compare with other algorithms, you also have to implement those algorithms. A lot of work to do. (1) How do you address all such issues in your research efficiently and reliably ? (2) How do you debug the code and tune the parameters efficiently? (3) How do you implement a large scale of problem with a personal PC?(For image/video analysis, there may be a large volume of data beyond your RAM, how to deal with it?)
-
Answer:
Unfortunately, there is no easy answer. You typically learn to deal with all of these issues while getting a PhD. I'm only confident in saying that you learn all of these skills at places like CMU and MIT, at other universities your mileage might differ. (1) How do you address all such issues in your research efficiently and reliably ? You basically have to be a member of a research group for several years in order to learn a little bit about all of these issues. If you're in a lab which focuses on object detection, there will be many students around you struggling with the same issues, and talking to fellow students in the middle of the night is the only way I know that you can gain the expertise you inquire about. (2) How do you debug the code and tune the parameters efficiently? The best practices for debugging will be acquired as you look over the shoulders of more advanced students. You should be comfortable with debugging in general before you start debugging machine learning algorithms. Debugging machine learning algorithms is not like debugging quicksort. If you fix all bugs, your algorithm might still not work because of other issues such as lack of data, too low model complexity, etc. To be quite frank, debugging vision/learning algorithms is more like art than science. Tuning parameters of an algorithm or software library you did not write is never easy. You should learn how to use validation data correctly, have a good sense of how it takes to run the full training/evaluation pipeline, and be ready to use a cluster of computers for cross-validation. (3) How do you implement a large scale of problem with a personal PC?(For image/video analysis, there may be a large volume of data beyond your RAM, how to deal with it?) In general, you don't implement a large-scale problem on a single PC. One of the most valuable skills I learned in graduate school is how to parallelize computations across a cluster. This is unfortunately one of those make-it-or-break-it skills. While not impossible, it is hard for universities/labs without clusters to compete with universities with medium-to-large sized clusters. This is also one of the reasons why so many Professors are joining organizations like Google and Facebook -- they have the data AND the computational resources to let senior researchers work on more and more ambitious large-scale problems. If you are unable to get access to a large cluster, then I would recommend applying for an internship at a place like Google. You will learn so much (at least I did) while you're there. While you won't be able to bring back home any code you write there, you will learn lots of scaling lessons that will impact your life as a student. If you have to work on a single machine, you will have to cut up the dataset into smaller chunks and incrementally load the chunks into memory.
Tomasz Malisiewicz at Quora Visit the source
Other answers
If you need to compare your algorithm performance with others , you can have a look at @http://www.vision.caltech.edu/Image_Datasets/CaltechPedestrians/ This is for pedestrian detection. This might give you a better idea . There are similar benchmarking available for other areas of application.
Prithvi Ravvarapu
Related Q & A:
- In Visual Studio 2012 or 2013, how can I register a DLL file on Windows 7 64-bit computer using a Custom Action command?Best solution by Stack Overflow
- How can I save a copy of my printed docs on my computer?Best solution by Yahoo! Answers
- How can I hook up my printer that's on my main computer up to my laptop?Best solution by h30434.www3.hp.com
- How can I accomplish getting a peaceful home with my siblings, mom, etc?Best solution by Yahoo! Answers
- How can you compare amd to intel?Best solution by Yahoo! Answers
Just Added Q & A:
- How many active mobile subscribers are there in China?Best solution by Quora
- How to find the right vacation?Best solution by bookit.com
- How To Make Your Own Primer?Best solution by thekrazycouponlady.com
- How do you get the domain & range?Best solution by ChaCha
- How do you open pop up blockers?Best solution by Yahoo! Answers
For every problem there is a solution! Proved by Solucija.
-
Got an issue and looking for advice?
-
Ask Solucija to search every corner of the Web for help.
-
Get workable solutions and helpful tips in a moment.
Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.