.: Week Ten - 9/6 - 9/10
This week was pretty boring. I had some trouble with my final report; it seems like
most students use a research paper written by their group or something similar
as their final report, and I don't have anything like that. However, after
asking for help I was able to come up with an outline that I think will work.
It took a really long time to write though - much longer than I thought. I also
filled out my travel expense reimbursement spreadsheet, refined some bits of my
website, and just wrapped up all the loose ends. I'm glad I did this program -
not only did I learn a lot about the subject matter I worked in, but I learned
a lot about myself - what I want to do, where I want to be, and just more about
what I want out of my life.
.: Week Nine - 8/30 - 9/3
One of the biggest challenges I had in arranging my DREU experience was finding an
apartment. I have a pet so I couldn't live in the student housing, so I
definitely needed an apartment. I also had to have a major organ surgery with a
long recovery in May when most students were beginning their research jobs. I
wasn't able to start mine until the beginning of July, as that was the earliest
I was able to travel after my surgery. That meant that my research experience
extended into when school started for Berkeley (My college runs on a quarter
schedule, so school doesn't start for me until the end of September). Because
of that, I wasn't able to find a sublet that lasted my whole experience, so I
have to move out this week. However, my mentor said I could finish up my
research experience from home - primarily just writing the report and finishing
up logistical things.
Therefore, this week was partially spent moving. I couldn't do the whole drive in one day,
so we split it up into two. It was actually quite fun, as we got to drive for a
while in wine country, then see the redwoods, and then finally stop along the
coast for the night. The next day we made it into oregon after a couple hours.
After settling back in, I've started catching up on all of the things that I put off.
I've been doing some more work on my website so I'll be ready to submit it next
week, and have start working on my final report. This is proving to be quite
challenging - many previous students have used papers written by a research
group they worked with as a final report, but I don't have a resource such as
that. My project was a bit more unconventional, and I'm not too sure how I'm
going to write a complete report on it.
.: Week Eight - 8/23 - 8/27
This was a pretty frustrating week for me. I still had very little idea how to even
begin to check the Jacobian at the beginning of the week, but eventually I
realized that simply using the code we already have and eliminating unnecessary
parts would be the best approach. I was also able to get some pointers from
Soren on this, which was very helpful.
I wound up creating a brand new sample skeleton file - this is a text file that
creates a 'skeleton' of sorts, by basically listing points in space that define
a set of 'bones'. This was actually one of my favorite things this summer - it
was really interesting to learn how to and then to create my own .xsf file,
especially since there are very few resources on how to do this. I then had to
mess with the code quite a bit until it would accept my very simple skeleton
file, which I edited to replicate an example out of the textbook. The it turns
out the program was hardcoded in many areas in a way that made a small skeleton
impossible to use, so it was quite a job tracking down all of the problems.
However, I was able to, and wound up producing an incorrect (compared to our
calculations) Jacobian. Whether this is an error in my skeleton file or the
code or simply how I'm interpreting it remains to be seen.
The last day of the week I spent working with Ram to get the code working on his
computer. Basically we had to take everything I did in 6 weeks and do it in one
day! Since I had already done it (through trial and error..) and fixed the code
so it worked and the executables ran, it didn't take that long and we got most
of it working.
I also did some serious packing this week, because I have to move out of my
apartment very soon.
Week Seven - 8/16 - 8/20
This week I spent primarily figuring out more about the code. Ram has spent a lot of
time throughout this summer explaining the math behind the articulated
tracking, and I feel like I bit of an idiot - I'm sure he's explained the same
thing to me ten times, and I think that i understand it at the time but then
later realize that I missed a lot. I guess that's just how it works though -
I'm missing a lot of background and context for some of it, and so it takes a
while to understand! I'm finally starting to really get at least what is going
on in the code though.
Once I got the executables working, Ram wanted me to go through the code and find
out where each step of the articulated tracking was happening. At first I was a
little panicked - I had some very vague ideas but there were so many things
going on and what looked like duplicate places where the same thing was being
done that it seemed like there was no way i'd be able to figure it out.
However, after staring at it for a very long time and tracing through with the
debugger, I found where I thought everything was happening. I then talked to
Soren about it for confirmation. It turned out I was wrong about some of them
(not surprising), but I actually had the right idea.
After getting all of that figured out, we wanted to check and see if the Jacobian was
being computed as we thought it was in OpenTissue. The code doesn't seem to be
doing what it should (or at least not as well as it should), and Ram suspected
that the Jacobian may be the problem. So, he suggested I take an example from a
textbook I read at the beginning of the summer and try to duplicate it through
the code, and see if the code produced the correct answer.
I had a short work week this week because I am taking off on Thursday to go visit
some family in Chico.
.: Week Six - 8/9 - 8/13
I made a lot of progress this week! I ended last week with a successful build
(finally!) and this week I got the executables up and running. I was able to
spend a lot of time chatting online with Soren, the visiting scholar who wrote
the code a while ago. He helped me figure out what parts of it that I didn't
understand were doing, as well as how to actually run each of the executables
and what they were doing. When I build I still get about 50,000 warnings, but
he showed me how to eliminate the only important ones and a way to cut down on
the rest - just a simple change in the make file.
After chatting with Soren, all of the executables were running except for two - and
one of those is unfortunately the most important one. I was able to trace
through using the debugger that evening and the next day though, and eventually
found the error and wound up getting it to work. The other executable still
didn't work though, and it wasn't even catching an exception; it would just
report an error as soon as I tried running it. It seemed to be a .dll issue, and
I was a little afraid of messing around with that too much. So, I asked Ram if
he could help me take a look at it.
We spent quite a bit of time doing that, and went back and rebuilt OpenTissue
using CMake to make sure we weren't missing anything there. We wound up finding
the issue, but it would have been a huge pain to fix. After finding out from
Soren that that specific executable wasn't very important, we decided to
proceed without it.
I also spent this week planning a weekend trip to Chico to see some family. I'm
really excited about it, because I haven't met some of them and the others I
get to see very rarely. I think I'll be taking the Amtrak train, which will be
a new experience.
.: Week Five - 8/1 - 8/7
I had a really nice weekend. I think the neatest thing about spending the summer
in a completely new area like this is how easy it is to find new and
interesting day trips. We went to Napa Valley on Saturday as planned and toured
the Castello id Amorosa winery. It was one of the coolest things I've ever done
- the winery is built as a replica of an Italian castle, and has a huge maze of
tunnels underneath for storing wine.
On Sunday we went to Lake Chabot. It was really nice and warm (but not too hot!),
which was a change from the cold and overcast summer we've had at Berkeley. It
was absolutely beautiful. The lake grounds were really crowded with picnicking
people, but once we got on the lake there were only a couple other people
there. The drive there and back was especially beautiful!
It was kind of tough to go back to work on Monday after such an awesome weekend
since I was so frustrated towards the end of the previous week. Luckily, Ram
solved my problem for me relatively quickly. It turns out I was missing OpenCV
- that's where all those files I needed were. Once I got that taken care of, a
lot of the errors vanished. However, I still had a lot of them left. I spent
the rest of the week tracking them down - there was one file that I just could
not fix and wound up editing the code differently about 5 different times
before I found the right solution. There were also still some randomly missing
header files that seemed to be missing from visual studio itself, so I spent a
while collecting all of those.
While I was doing this it gave me another good opportunity to get a little more
familiar with the code. While I spent the week Ram was gone really going
through it and studying it, actually trying to fix errors and understand how
the files work together made it a lot more clear. Finally, at the end of the
week I had a successful build. I still have a ton of warnings, but I'm not sure
if many of those are important. I've also started talking to Soren more and
emailing him specific questions about the code, and he's been very helpful. I'm
hoping to be able to start getting the executables up and running next week
with his help.
.: Week Four - 7/26 - 7/30
After my somewhat disastrous previous week, I decided that maybe using my desktop
machine at work would be the best choice. It already has visual studio, so that
made things much easier.
I transferred everything over (once again) to the desktop machine, and began
gathering the different programs I'd need. Predictably, I ran into problems at
every step of the way. I don't really have a ton of experience with C++ or with
using and compiling different libraries and open source programs, so this
probably took a lot longer than it should have because I made a lot of mistakes
and didn't understand a lot of errors. However, I definitely learned a lot
about the different programs and libraries I wound up using. At the end of the
week, I ran into a bunch of problems though that I can't figure out - I'm
hoping Ram will know what to do next week. I think I'm missing a bunch of
source and header files, but I'm not sure where to get them/what kind of
package they're in.
.: Week Three - 7/19 - 7/23
Ram was at a conference in Singapore this week, so I was on my own. I got a copy of
the articulated tracking code, along with the email address of the person who wrote
it. It was really nice to have his contact information - there's nothing more
frustrating than trying to figure out code someone else wrote.
The code is written in C++, which I've used before but not extensively. I spent a
while just browsing through the code to figure out what was going on. On a high
level I think I get what it's doing - on a lower level I have not a clue. But I
don't think I need to; I think a basic understanding of it is what's important
right now. One of my biggest challenges this week was figuring out how I was
going to deal with the code. Visual Studio seemed like the best bet, but I
don't have it on my Mac. I brought a PC with me as well, but it's old and has
absolutely no battery life. I started out on my Mac, trying to install CMake
and everything to build the code. Then I realized how many extra things I
needed to install and get to compile before I even started on the real code,
and decided that Visual Studio was the way to go.
I then reawoke my PC after months of hibernation, only to find that I had left it
in a virus-ridden state. I dealt with the best I could and started transferring
everything over and installing CMake. I also needed to get a program called
OpenTissue to compile - which of course required other programs itself to
compile. It was like recursive program dependencies and it was very confusing
and frustrating. Finally, I wound up with an approximate idea of everything I
needed to install and found some good websites with tutorials for doing so. I
was starting to work on this and making a little bit of progress, when my
laptop started having some issues apparently I didn't take care of all the
spyware and viruses that were floating around.
.: Week Two - 7/12 - 7/16
This week was more interesting. For the first half of this week, I finished up some
more paper reading. It was a little easier to get through after reading the
other material, but I still felt like some of it went over my head. Later on in
the week, though, I got to go to the teleimmersion lab. We captured some data
for Ram to use at a conference he was going.
Then later in the week we went back to capture some data for a visiting professor.
His research involves robotics and walking - specifically, how to make robots
walk like humans. For this data, we each put on the motion capture suit and
Information for the teleimmersion lab can be found here.
We each put on a motion capture suit and walked
across the floor several times. After 2 days of this, we spent some time
looking at the data. We could see the points that had been attached to our legs
walking, but only the points (we had them on our feet, at our knees, our hips,
and a couple on our torsos, thighs, and calves). What was really neat was that
you could identify who each video clip was, simply from a few points moving
.: Week One - 7/5 - 7/9
I left Oregon little less than a week ago to begin driving down here to
California. It was a really long drive, but we got to stop and see some family
along the way to break it up a little. I spent the weekend alternately moving
into my apartment and exploring San Francisco and Sausalito.
Even though I'm not working with any other DREU students (or even any other
undergrads), I'm living with one. She's working for a different professor, and
soon after being accepted to the DREU I was able to contact her and we decided
to be roommates. We found an apartment through a friend of hers.
My first day of work was spent meeting with my mentor and the graduate student I
will be working with - Ram. We then ran around campus trying to get all the
administrative stuff set up, which is still unresolved. The rest of this week I
read. A lot. All of my research background has been in HCI and a little bit of
computer graphics, and I haven't had the math classes necessary for
understanding a lot of what we do with particle filtering and articulated
tracking. I read a few very math-heavy research papers and a couple chapters of
a robotics textbook to get me started. It was really hard to get through the
reading, but I feel like I understand so much more now.