FYP Progress Report (1)
Prepared by: George Chen Fengrong Prepared for: A/Prof Teoh Eam Khwang Mr Mohammad Ghahramani 10th October 2010
FYP progress in accordance to planned timeline, with near completion of Stage1.
Abstract
The progress of the Final Year Project (“FYP”) is in line with the planned proposal. The implementation of a simple LBP is almost done, except some fine tuning of the program. Numerous obstacles were faced during these weeks ever since the start of the project. These obstacles were overcome by fully understanding the detailed nature of the problem. FYP was paused temporarily at week 5 and 6 and this did not slow down the progress. Upcoming work will involve the rounding up of simple LBP implementation and modifying it.
1) Summary of Progress •
•
•
•
Set up a FYP blog to blog on FYP development Attempted to installed PyCV (PoissonCV), but gave up due to insufficient support. Proceeded to install OpenCV, which took some time. Tried out and implementing the simple LBP. (in progress, near completion).
With reference to the FYP Proposal Timeline, Timeline, I am within schedule. This is partly because I was quite lenient in the planning of my timeline. The following table below shows my actual work done, as referenced to my planned timetable. Week12
3
4
5
6
7
Recess
1) Set up objectives, Install pycv, 2) Install openCV, Knowledge reading planned
3) Knowledge reading, Familiarisation Familiarisation of OpenCV and LBP algorithm. 4) implementation implementation of simple LBP codes
Actual work done
1) Objecti ve setup, propos
2) Changed to OpenCV, understa
3) Commenc e developm ent of
BREAK (due to
4) Continuation of simple LBP implementation
al. Installe d PyCV, but aborte d.
1.1)
nd LBP
simple LBP
CA of other modules)
The reason why PyCV was aborted was because I anticipate I lack support should I continue using it, as stated in my blog blog..
1.2) I spent quite quite a lot of time time in week3 trying trying to install install OpenCV properly. Because there are quite a number of procedures in correctly installing it, and allow Visual Studio 2008 to use its libraries correctly. 1.3)
I commenced the implementation of simple LBP, before “spending time familiarizing it”, because I find that it is more efficient to learn as we develop the project.
1.4) I paused paused my FYP for a short short while in Week5 Week5 as there there were 2 CAs (or quiz) from other modules. But this did not caused me to lag behind schedule. 1.5) Implementa Implementation tion of simple LBP continues continues.. The basic idea is already there. Now is left the fine tuning, and we try to obtain consistant result from OpenCV and Matlab which is in progress.
2) About the OpenCV source code The full source code will not be reproduced here although it is not lengthy. Instead, I present below a simple diagram.
The first step and the last step involves OpenCV. Only in the 2nd and 3rd steps, I used C++ which I am familiar with in the implementation.
3) Problems encountered 3.1) Problems in installing PyCV There were 7 to 8 different installations to correctly installed PyCV. I reached some problems in the middle, and emailed the author. In the end, I decide not to continue it, as there were limited help available.
3.2) Problems installing OpenCV There were many different instructions in “correctly” installing OpenCV. However some of them are wrong. Whenever I reach a problem, I either •
Uninstall everything, and reinstall from scratch. o
o
Pros: in the later installation steps, and if there ther e is a problem, u can be sure it is not n ot due to this current problem. Cons: took a lot of time uninstalling and reinstalling everything
In the end, my friend, Melvin Me lvin Sie, who is in NTU SCE assisted me in the installation. The credit goes to him! In total, I spent approximately 5full days in dealing with this.
3.3) Problems using OpenCV codes I came across many syntax programming errors which made me stuck. I attempted many times to seek solution online. The difficulty part is: it is very difficult to describe the problem into google. •
For example, if you have a weird error, some “mishandled exceptions” at memory 0x12FE. If you copy this error err or
message into google, most likely you can’t find the answers you want. How to overcome such problems? Number1: Patience. Number2: I backup a lot of copies of my program everytime I completed a subsection. Hence I have version1,2,3,4,5,6,7(latest). And if I have problems which I couldn’t solve at all at version7, I may need to return back to version6 and redo the part on version7 again.
4) Upcoming Plans In accordance to the FYP Proposal Timeline, I will complete Stage1 on implementing a simple LBP first, before I proceed to Stage2 to modify it. I have a quiz on week7, and 10, but I foresee this should not halt my FYP progress significantly.
Written by: George Chen Fengrong 10th October 2010