5/10/2017
As I am wrapping up the final documentations for my project i think back to the day when everything started. I remember being nervous but also excited about the challenge that I had ahead of me. Now I am about to be done and I am very happy with how the project turned out. I was able to create and design my application as I originally planned with some few exceptions that was made in order to make the application work better or just because I came up with a better solution to a problem that i was currently working on. My final presentation also went really well. I was able to talk about all the specific parts of the project that I thought represented the project in a way that I wanted it to be represented and I think the response I got from the audience also was really good. I was also able to answer all the questions from the audience after my presentation which was a relieve because this was the one thing that got me nervous before the presentation. I thought it was really fun working on this project but it is nice that it is about to come to an end now. It is going to be a good feeling handing everything in and start focusing on new challenges that might face me in the future.
4/6/2017
Now it is only a few weeks left until our project is supposed to be done and I would lie if I said that I was not a little stressed out about it. I think that I am in a good spot considering what I have left to do. I have content for my three main pages and even though they are very basic at the moment they work as they are supposed to. With my Alert and Contact pages I just need to make them look good and make sure that the right information is being displayed. Because of this I am going to put most of the time I have left into making my Live page complete. I want the user to be able to use it as a surveillance monitor and because of this I want to create a full-screen mode whit both a time stamp at the bottom and the snapshot button. When this is done I want to modify the snapshots the user take so that they also contain a time stamp. Then finally I talked to Dr. McVey today about having the program taking an automatic snapshot when motion is detected. She told me there is a way to compare pixels in images so that is what I am going to look up and try to implement in order to get that to work. I think that it comes down to me just making sure that I put down enough time for me so that I can finish the project the way I want to and if I do that I think I will be fine considering getting the project done.
3/21/2017
After taking a little break from this project because of last weeks spring break adventures in sunny Palm Springs California I am now back on my path to complete this project. When looking at the things I have done I am feeling confident that I will be able to finish in time for the presentations. The week before spring break I spent on trying to save a specific image from the live feed so that the user can be given the option to press a button and save a snapshot at any specific moment. I looked at the code that I have for my live feed and since I get the live feed by uploading a single image at a time multiple times per second I thought it would be useful to use the same variable that uploads the current image to the screen. By using this variable I was able to write code that would take the image in the variable at the exact moment the snapshot button is pressed and store this image in a predetermined file. I just got this process to work so my goal now is to great another page called the alert page where I will try to display the image files I have in the map and then be able to show a specific image when the user press the date and time when the image was taken.
2/28/2017
A lot of the time last week was spent on understanding the source code that I was able to find and also modify it so that it will work within my guidelines. Right now I got my home page that has a button connecting it with my live page and one my live page I am now able to stream live footage from the camera. During one of my meetings with Dr. McVey last week she suggested that I would add a RichTextBox to my live page that will display the data that the camera is giving me. This will make it easier to understand how the program and camera are working together and hopefully it will help me when I am starting to work on my alert system involving the motion detection. My next step after implementing the RichTextBox will probably be to work on saving a snapshot from the live feed and getting giving the user the option to take a snapshot while looking at the live feed.
2/20/2017
Last week was one of the most eventful weeks since I started this project and I am going to try to summarize it as well as I can. First I presented my project during our class on Tuesday. I was also able to get thoughts and ideas from the other students and this was helpful because it gave me some ideas on how I can solve the storage issue when I reach that point in the project. Another thing that they suggested was to store a snapshot instead of a video once the motion detector detects motion so that is also something to think about. The image below is the layout I used to present my ideas and it shows how the different pages will communicate with each other.
Since working in C# is something new for me I decided to go see Dr. McVey and asked if she could give me a short walk-through of the basic features in C# and also if she could provide me with some helpful tips and tricks that I can use when I am working on my project. With Dr. McVey's help I am sure that I am going to be able to master C# as this project goes a long.
Finally I was able to find some open source code that uses the camera in order to provide a live image in the application that the code generates. The guy who wrote the code is called Chris van Beek and he works for Info Support which is a website where the blog is posted. This is the link to the blog-post:
https://blogs.infosupport.com/writing-an-ip-camera-viewer-in-c-5-0/
I think this is going to be helpful for me when I implement the features I want because he uses the same document as the one I found. By studying his code and understand how he was able to use the document to get the live image I am hopeing to be able to look at the document for the other features I want to use like recording and motion detection and create code that makes this work for my application. He also added a zip file at the bottom of his blog post so under this post I am going to attach it so that anyone can download it and see what I am working with
Since working in C# is something new for me I decided to go see Dr. McVey and asked if she could give me a short walk-through of the basic features in C# and also if she could provide me with some helpful tips and tricks that I can use when I am working on my project. With Dr. McVey's help I am sure that I am going to be able to master C# as this project goes a long.
Finally I was able to find some open source code that uses the camera in order to provide a live image in the application that the code generates. The guy who wrote the code is called Chris van Beek and he works for Info Support which is a website where the blog is posted. This is the link to the blog-post:
https://blogs.infosupport.com/writing-an-ip-camera-viewer-in-c-5-0/
I think this is going to be helpful for me when I implement the features I want because he uses the same document as the one I found. By studying his code and understand how he was able to use the document to get the live image I am hopeing to be able to look at the document for the other features I want to use like recording and motion detection and create code that makes this work for my application. He also added a zip file at the bottom of his blog post so under this post I am going to attach it so that anyone can download it and see what I am working with
ipcamsample1.zip |
2/13/2017
Last week I did some major changes to my project. Instead of creating an android application and using Android Studios I have decided to use C# instead because I think it will a better platform to work on when implementing the features for my application. Me and Ben got together and tried to locate the SDK files for our camera and now we finally think that we have found some files that can be useful. Towards the end of the week I finally started working in C# and my main goal was trying to locate the camera’s IP-address so that I can get the image from the camera showing up in my application. I was not successful doing this but I think that I am on the right track so hopefully I will get this done as soon as possible this week so that I can start implementing the features needed for my application. On Tuesday me and Ben are going to present our projects for the class and show what progress we have made and also present some problems we have run into. I am also going to asking what people think of the layout I have planned for my application and if there is anything they think I can improve that would make the app more user friendly.
2/5/2017
I have now been working on the project for one week and based on that I have made two conclusions, this is going to be a very interesting project to work on but it will also a complicated process with a lot of challenges. This only makes me more motivated to work hard and then at the end of this semester be able to see that all my hard work paid off. I received the security camera I am going to use for this project and I installed the already existing application on my phone in order to get a bit more familiar with it. Together with Ben Talbot who is a student in my class who is working on a similar project we have tried to located the SDK-files for the camera so that I can start working on implementing it with my mobile application. Ben have reached out to the company who makes the camera and hopefully they will send him the SDK-files sometime in the beginning of this upcoming week so that I can figure out how I will get it to work together with my application. While we are waiting for the company to respond Dr. Pankratz sent me a link where I might be able to find some old files that can be useful.
I have also started working on developing my mobile application. I talked to Shelby Kirn in class this week and she recommended that I would go and check out a webpage called Udemy where you can get a lot of valuable tips on how to develop your own application. After doing this I do not think that the application itself will be that hard to make. The real test is going to come when I am going to get the application to work together with the security camera but before I worry about that I am going to get to that point first. I thought I would create a simple layout of the application that will still have all the necessary features. I did a simple drawing of how I am going to create my layout that I attached underneath this paragraph but my main idea is to have a home page with three buttons one it. The first one is going to go to the live feed of the camera where the user can see what is going on in front of the camera at that moment. The second button will lead to the alerts that are going to be recorded when someone sets of the motion detector. Finally the third button is going to give the user an option to contact some saved contacts someone who can be at help for different situations.
I have also started working on developing my mobile application. I talked to Shelby Kirn in class this week and she recommended that I would go and check out a webpage called Udemy where you can get a lot of valuable tips on how to develop your own application. After doing this I do not think that the application itself will be that hard to make. The real test is going to come when I am going to get the application to work together with the security camera but before I worry about that I am going to get to that point first. I thought I would create a simple layout of the application that will still have all the necessary features. I did a simple drawing of how I am going to create my layout that I attached underneath this paragraph but my main idea is to have a home page with three buttons one it. The first one is going to go to the live feed of the camera where the user can see what is going on in front of the camera at that moment. The second button will lead to the alerts that are going to be recorded when someone sets of the motion detector. Finally the third button is going to give the user an option to contact some saved contacts someone who can be at help for different situations.
1/30/2017
After going through the first week of classes at a pretty smooth pace I now feel that the real work starts with the start of the second week of classes. Last week most of my teachers started by introducing us the the material that was going to be covered during the semester and what the main goal of the class was. This was also the case in CSCI460 where we talked about the meaning of the class and why it is important for us as computer science majors to have a capstone class. Then we got assigned to a specific project and when I saw what my project was going to be I got both excited and a little nervous because I then realized that this was going to be significantly bigger than any projects I have completed before.
I am going to create an application that works together with a security camera in order to give the user different possibilities to interact with the security camera. Some of the features will be that the application alerts the user when the security cameras motion detector detects something in the room and it will give the user an option to record the footage if he or she wants to. If the user is not able to take part of the footage after an alert the application should be able to record what it is capturing while the motion detector detects motion. My plans for this week is to research how to develop an application for an android phone, find out more information about the security camera I am going to use, and finally meet with Dr. Pankratz and try to figure out a plan on how to tackle this project.
I am going to create an application that works together with a security camera in order to give the user different possibilities to interact with the security camera. Some of the features will be that the application alerts the user when the security cameras motion detector detects something in the room and it will give the user an option to record the footage if he or she wants to. If the user is not able to take part of the footage after an alert the application should be able to record what it is capturing while the motion detector detects motion. My plans for this week is to research how to develop an application for an android phone, find out more information about the security camera I am going to use, and finally meet with Dr. Pankratz and try to figure out a plan on how to tackle this project.