Welcome!


While you are here...

Home
View my project schedule/plan
View my resume
Contact my references
Read my philosophy statement
My code

My personal links...

Compsci

CS460--Senior Capstone


May 1, 2005--9:57 AM
This past Tuesday we had our presentations, so that bit of stress is over! And to make it even better, all of the presentations went well :) So, since then I've been busy finishing up documentation (both internally and externally) and also finishing up on this website, since editing permissions will be turned off tomorrow morning. Everything has been posted on the website now, and to make it easy to find, all of the links were placed on the home page of the website, listed under "Results". I figured this would be easist, because now that page lists the description, then the requirements and finally the results...it flows well.

Since this semester is wrapping up, I bet you could guess that this journal is too. Actually, this probably is the final entry already...it doesn't seem like an entire semester has gone by already....how time flies! It has truly been a learning experience in many ways. Now all I can hope for is that Mr. Blahnik likes all of my work and actually uses it...


April 24, 2005--10:49 PM
In the past week, I have been able to implement a couple different formulas for finding a best-fit-line...then I had to test them and found the one that worked the best (I didn't think there'd be a difference, but upon testing them, I was proven wrong). Plus I also used some simple weights for historical data, and in all of the testing I did on sidewalks, I did not see a difference between this way and what I had been doing before...except that without the extra computations, it ran a weeee bit faster. So, I'm sticking with what I had before. Also I've been working on cleaning up my code and writing documentation and adding stuff to my webpage in preparation for the presentations and also for the end of the semester when everything has to be finished. Slowly getting there, and yet it's hard to believe that it's almost over!


April 14, 2005--2:04 PM
Got some redirection earlier today...now my c++, win32, and dll work is all scrapped and I'm strictly focusing on VB6. So stay tuned for the next week to see how far I can get.


April 10, 2005--6:35 PM
MY C++ CODE WORKS!!!! YAY!!!!! I have finally found out what was wrong...for some reason my xmask and ymask arrays were being reinitialized to all 0's. So, now I'm getting better numbers for my sobel data...the problem now is that I have to figure out how to display the sobel data in a window using win32, because my previous thought of simply writing over the input array and putting that on the screen did not work :( Sometime this week I have to meet up with Dr. McVey and her win32 book to see if we can find the least messy way to display my data quickly on the screen. (However, if it was possible, I would be jumping up and down, because my code works!! Getting it to display on the screen is minor...but still important.)


April 5, 2005--6:29 PM
Some highs and lows today. I've spent most of the day working on 1. understanding Drew Demerath's code 2. making a new project with Drew's code that allows me to directly touch the data from the camera and 3. implementing the sobel algorithm in C++/win32. I met with Dr. McVey and she was a great help on getting me started up in C++ again :) However, my problem is that I currently cannot get sobel to work in this environment. I can get numbers to frame the picture, but everything inside turns black. On a positive note, though, I did spend the past hour updating my website, so now my code is available....sooooo if anyone is reading this relatively close to the date posted, if you feel like looking at my code and seeing if you can find the error in it, I'd greatly appreciate it :) My jump from VB to C++ is in an effort to make my code modular (a requirement for the project) because after talking with Mr. Blahnik we decided it would be easier for me to write two versions instead of trying to make one version that both languages could call. I feel pretty comfortable now, having re-immersed myself in C++, but now I have a lot of debugging to do to find out what is going wrong in my code. Plus I have to work on making a pretty interface in win32 which could be difficult, but I feel up to the challenge. (I just hope it doesn't prove too difficult, because I'm running out of time...however, with a good win32 book and Dr. McVey to aid me, I'm not worried about this happening).

Also, in terms of my efforts in VB, a few days ago Kevin showed me how to draw lines in a picture. So, now I have a version of my code that draws a line from the bottom box to the top one, which shows the user a potential direction that they must turn, and (based on the slope of the line) how sharp they have to turn. This was of course done for Mr. Blahnik and someone who may be using this code to control a robot. When I get a chance to go back to this code I plan on drawing lines between all the boxes instead of just between the top and the bottom ones to give a better idea of curvature in an object (which on a sidewalk would be like showing the anticipated path of travel).


March 28, 2005--7:26 PM
I'm back at SNC from break...and sorry to break your heart, but this won't be the usual journal entry. Fact is, I haven't been able to really work on my capstone over break, because of my surgery (I survived, in case you were wondering :) and it went alright as well). I am now on a weight restriction (I am only allowed to carry a max. of 10 lbs.) so carrying the laptop I borrowed is out the window...next time I have to ask for the lighter model... So, we'll have to wait and see what I can accomplish from my room (at least until I can walk normally again). On the up-side, it's spring and I'm looking forward to being able to work on this project again...at least as much as these final weeks will allow!


March 13, 2005--2:04 PM
I have been pretty busy this past week so I haven't been able to work on the project much...However, I still got some things accomplished in the time that I had. After talking with Kevin and Blahnik, I worked on getting a "forecast" going. Now I'm finding the center in three places and giving the difference in the bottom and the top (in pixels). This provides feedback so now the "user" can know this difference and deteremine how far to steer, turn, etc. based on this value (small value=slight turn, big value=big turn...exactly how much to turn is left up to the user, of course). Also, with this value, negative means go left and positive means go right...so now I've got direction of turn and degree of the turn information that Blahnik was looking for. Besides all this, now the program bases where it looks for the center on historical data (previous frame only). Which means that it now starts looking from the previous center position to find the current, instead of looking at the center of the frame every time. One thing I have to do now though is meet with Blahnik (or someone) to find out how to make a working dll so VB can call my functions from there instead of being part of the actual project. I know he's done this before, so he's my number one target right now :)


March 6, 2005--11:31 PM
Met with Dr. Pankratz and Mr. Blahnik last week. Both had ideas for me for finding a line...not sure which way to go though...the least squares method (courtesy of Pankratz) seems easier to implement and also less CPU intensive. I think I'll bring that up in my walkthrough. Didn't get to work at all this weekend, prior to now. However, tonight I've made some nice progress...I have implemented the "bit blast" in my code and now it runs a lot faster!! :) I also got to play with my pictures in memory and was figuring out how they are stored in memory. (I got my picture to display both upside down and backwards before I finally figured out how to display it correctly on the screen) Now that I have this implemented, I next have to worry about my walkthrough on tuesday and after that worry about finding lines (edges) so I can make a more educated guess as to where I should be centering (by keeping a history of sorts...) I hope all goes well. I'm ahead of the schedule I originally set for myself, so I'm pretty excited about this next part :) I'm not quite as worried about the semester coming quickly to an end and yet at the same time I'm terrified!!! (Nobody likes running out of time...)


February 27, 2005--8:49 AM
This week has been a week of progress: on Tuesday I was in the lab and got a very basic method of finding the center of a sidewalk implemented...and it works!!!!!! :) Dr. Pankratz was in the lab at that time so I got to show him what I accomplished. He told me that I should think about storing historical data, so then my program could guess where to go if it lost an edge. I've thought about that and I've talked with peers about it and basically what I should do on my project (working hard not to go too far on my project...trying to avoid that second system syndrome). Then on Thursday, Kevin, Alex and I walked to my house from campus, and we got video screen capture of my program working :) One of these days I have to implement "bit-blast" (really bitblt...or bit-block-transfer, for any windows programmers out there) instead of my pixelsets that I'm doing right now. This wasn't a concern before because I was working with still images, but now that I experimented with the webcam I realized I need to convert my code. I can't wait for the project walk-throughs, because I want to see if anyone else in the class has ideas for how I can find the center of an object...there are so many variables that it's almost impossible to know exactly where you are with respect to a particular object, because the computer can't distinguish between objects! (all it can see are edges, but it doesn't care whose edges they are) I'm thinking my algorithm is good enough for now, because on test runs it does a good job of finding the center of a sidewalk...gotta leave something as an extension for my project, right?? ;)


February 26, 2005--ALL DAY
HAPPY BIRTHDAY TO ME!!! :)


February 20, 2005--10:34 PM
Met with Pankratz last week and discussed the potential difficulty I could face by the fact that depending on conditions, an edge could disappear from an image. Then went out and took more pictures of sidewalk (fun, fun). Then, this afternoon in the lab I got my program set up so now I can see the pure Sobel data or can use a threshold to try and clean up the picture. In addition, I can now use a slider to view all of the pictures I have taken. Tonight I've been working on paper and on the computer to come up with an initial (albeit very basic) way to find the center of an object. I hope to be able to get in to talk to the profs with an update before they leave for SIGSCE!


February 16, 2005--10:11 AM
Happy and sad this morning...first the good news (naturally): I got my program working so it will now read in a bitmap and use Sobel on it and dislay the result!! :) Yay! However...this leads to the bad news...my project is now on following sidewalks, but the problem is that I'm not getting the type of results I wanted... The other day Kevin and I walked around outside of Cofrin and took pictures of the sidewalk (this was later in the afternoon...maybe lighting was the problem...) After bringing those images in, I realized that in grayscale, some different color objects appear quite similar, which means that some edges are difficult to detect. Need to consult Dr. Pankratz on this one...I need to find out what to do if I can't get consistent edges for the sidewalk....


February 10, 2005--4:44 PM
Met with Dr. Pankratz and he put my mind at ease to a certain extent, by helping me focus my efforts and give me a goal to strive for at the end of the semester.

GOAL: To be able to follow sidewalk, with clearly defined edges, under varying lighting conditions.

This now allows me to focus on a particular task and I can hopefully make some decent progress on this new path soon. Afterwards, I met with Prof. Blahnik, and showed him what I had in terms of edge detection...he was impressed...and also wants me to get on to the mobile following of sidewalk fairly soon (not like I have a ton of time anyway), and is willing to help me out once I get to that point.


February 8, 2005--5:53 PM
In a word: YAY!!!! :) I've been working all afternoon on edge detection and I got Sobel Edge Detection working!! I was given a variation of this algorithm (which actually only approximated what Sobel does) and it kinda worked, so I found an actual version of it online, and with a little patience was able to implement the algorithm in VB. Also, with the code provided from Blahnik, the camera will follow a person pretty well. However, for some reason, in the lab, I couldn't get it to follow anything else (e.g. paper or a chair). But let me reiterate the YAY! on the fact that sobel's looking pretty cool and I can follow humans (even though I still have to try and decipher what Blahnik did for his feature recognition code).


February 7, 2005--11:08 PM
Short and to the point: still sorting through the code and trying to figure what everything does and how it does it....oh yeah, and deciding where I'm supposed to add my code and what needs to stay as-is. That's my story and for the rest of the night I'm stickin' to it ;)


February 7, 2005--12:08 AM
The code runs...I've decided to use the AVICAP code for now and am leaving the SDK stuff alone for now. This is because I had to take a lot of time to get everything installed and running, and since I don't want to have to do this at every computer that I work at, the other method seems to be the way to go. I've had a couple successful test runs, but have also had it crash on me too. So the plan for the week is to get acquainted with the code and see what I can accomplish by the weekend.


February 6, 2005--10:00 PM
Met with Blahnik last week and got the code and info about how to run the two different sets of code. Then went to Pankratz and picked up the logitech camera that will be used for this project. Tonight was the first night I've had to set up the camera and play around with it. So far I've been working on getting all the code to run...which has been a pain. With Kevin's help, I now have the code running, and I guess we'll see what I can accomplish from here. Wish me luck!


February 3, 2005--1:37 PM
Got copies of the installer packages and associated documentation from Kevin, so as soon as I have the chance (i.e. get my other homework done) I will get all of this installed on my computer. Let the experiment begin! :)


February 1, 2005--9:31 PM
Met with Professor Blahnik today to get the scoop on the existing code that I'll be using as a platform off of which to begin the technical aspect of my project. After that, stopped by Dr. Pankratz's office and filled him in and then got my webcam! :) Yay! This means that in within the next week and a half, I hope to have the webcam and the code up and running so I can see what I have to work with. I'm so excited that I finally will be able to "get my hands dirty"...just hope that this first step goes seamlessly, so I don't have to deal with minor setup issues in the beginning. Stay tuned...


January 31, 2005--10:33 PM
Met with Dr. Pankratz this morning and discussed what I had found during my few hours of browsing online. Definitely feeling better about this project the more I get into it. Decided that I should meet with Blahnik SOON. Hopefully tomorrow....if he's around.


January 30, 2005--10:32 PM
After much surfing, I've found some promising sites, a couple even include source code for the implementation of the Laplace Edge Detection Algorithm...this is nice cuz all I could find before was high level talk about the algorithm...still haven't found any pseudo-code or anything that outlined the algorithm....seems like people know about the algorithm and know what it does but nobody was really talking about how it work, etc.

The links I found...


January 30, 2005--6:14 PM
Got my webpage up and running, despite the fact that I can't get on to my intranet server (where I was developing this site)...at least I can thank the cache for saving me :)

In terms of the rest of the project...it's gonna be a fun night of researching online... Come back to read about what I find.