From 6030c31dd2b37372bfb5f37ba3fd75831897dafb Mon Sep 17 00:00:00 2001 From: Nathan Goss Date: Mon, 6 Apr 2015 14:08:04 -0400 Subject: [PATCH 01/13] Update README.md --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 5335908..f52b8e5 100644 --- a/README.md +++ b/README.md @@ -21,7 +21,7 @@ Your team will have two minutes to present. Create presentation with two or thre (Template follows. You may delete this line and all above it. Please edit the following template to create your report.) -# Project Title: title here (10 words maximum) +# Project Title: Photobench ### Problem Statement Describe your problem, and why it is interesting. @@ -67,10 +67,10 @@ What exactly will be turned in on this day? ## Group Responsibilities Here each group member gets a section where they, as an individual, detail what they are responsible for in this project. Each group member writes their own Responsibility section. Include the milestones and final deliverable. -### Susan Scheme -will write the.... +### Nathan Goss +Will be creating the backend of the project, namely the procedures for each tool that will be in the GUI. These procedures will include white balance adjustment, red-eye correction, simple drawing tools, gamma level adjustment, (de)saturation, and more. For milestone one, I will have implemented the procedures to handle the loading and displaying of the desired image. For milestone two, I will have implemented the level-correction procedures (RGB, white balance, gamma, saturation). For the final deliverable, I will have implemented the drawing tools (paintbrush, eraser, etc.). -### Leonard Lambda +### Eric Wang will work on... ## Proposal Presentation Link From d3f298fe918d496beeb415cade5e1e3a185ae332 Mon Sep 17 00:00:00 2001 From: Nathan Goss Date: Mon, 6 Apr 2015 17:55:25 -0400 Subject: [PATCH 02/13] Update README.md --- README.md | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index f52b8e5..abe9748 100644 --- a/README.md +++ b/README.md @@ -23,7 +23,7 @@ Your team will have two minutes to present. Create presentation with two or thre # Project Title: Photobench ### Problem Statement -Describe your problem, and why it is interesting. +These days, everything is documented by photos. People take them every day, both of themselves and their lives. Sometimes, these photographers (both amateur and professional) need to make changes to their photos, but they don't want to spend money on expensive photo-editing suites to do so. That's where Photobench comes in. Photobench is a Racket-based photo-editing program which has an emphasis on maintaining the abstraction barrier between the user and the components that actually make up the image. ### Problem Analysis Explain what approaches from class you will bring to bear on the problem. Be explicit and succinct. @@ -38,13 +38,7 @@ Do your homework here: if you are pulling data from somewhere, actually go downl If you are using some other starting materails, explain what they are. Basically: anything you plan to use that isn't code. ### Deliverable and Demonstration -Explain exactly what you'll have at the end. What will it be able to do at the live demo? - -What exactly will you produce at the end of the project? A piece of software, yes, but what will it do? Here are some questions to think about (and answer depending on your application). - -Will it run on some data, like batch mode? Will you present some analytical results of the processing? How can it be re-run on different source data? - -Will it be interactive? Can you show it working? This project involves a live demo, so interactivity is good. +The end product of this project will be a fully functional Photobench program. As a live demonstration of this program, we will run the suite of tools on a sample image, showing things such as painting, desaturation, and red-eye removal. ### Evaluation of Results How will you know if you are successful? From 4a015134907f3861e59481cfab9c8208ea8b5798 Mon Sep 17 00:00:00 2001 From: jarzelia Date: Tue, 7 Apr 2015 01:29:54 -0400 Subject: [PATCH 03/13] Update README.md --- README.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index abe9748..15f5cbc 100644 --- a/README.md +++ b/README.md @@ -29,9 +29,9 @@ These days, everything is documented by photos. People take them every day, both Explain what approaches from class you will bring to bear on the problem. Be explicit and succinct. ### Data set or other source materials -If you will be working with existing data, where will you get those data from? (Dowload it from a website? access it in a database? create it in a simulation you will build....) +Since this is a photo editor, the data used will be inputted by the user. This data will be images in bitmap, and the work will be done directly on the image itself. -How will you convert that data into a form usable for your project? +The image that the user inputs should be ready to use, as Racket will convert images into a bitmap format. Do your homework here: if you are pulling data from somewhere, actually go download it and look at it. Explain in some detail what your plan is for accomplishing the necessary processing. @@ -65,11 +65,13 @@ Here each group member gets a section where they, as an individual, detail what Will be creating the backend of the project, namely the procedures for each tool that will be in the GUI. These procedures will include white balance adjustment, red-eye correction, simple drawing tools, gamma level adjustment, (de)saturation, and more. For milestone one, I will have implemented the procedures to handle the loading and displaying of the desired image. For milestone two, I will have implemented the level-correction procedures (RGB, white balance, gamma, saturation). For the final deliverable, I will have implemented the drawing tools (paintbrush, eraser, etc.). ### Eric Wang -will work on... +##Need more stuff +Will work on the front end, which would be the GUI procedures itself. This would include creation of a file input/output system, where files are able to be saved after editing, along with confirmation windows and sliders for various settings. In addition, toolbars will be created with options and icons will be made as shortcuts to the associated functions. Milestone one will ahve the general framework of the GUI and toolbars done, with a drawable canvas ready. Milestone two will be icons and the link to their associated action, along with rotating the image and resizing. The final deliverable will be a complete product with full funtionality, like undo, redo, cutting, cropping, and pasting the image. ## Proposal Presentation Link -insert your google presentation public link here, so with one click it will open up in the browser and you can present. +[The link is here.][link] [piazza]: https://piazza.com/class/i55is8xqqwhmr?cid=453 [markdown]: https://help.github.com/articles/markdown-basics/ +[link]: https://docs.google.com/presentation/d/1S--tAZMp4S52NcYyCdCmzADmeABylFmv2kQNlapXJd0/edit?usp=sharing From 2dba18ac054ef7e11fda4e8ffd135436ac151c8b Mon Sep 17 00:00:00 2001 From: jarzelia Date: Tue, 7 Apr 2015 01:33:59 -0400 Subject: [PATCH 04/13] Update README.md --- README.md | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 15f5cbc..000c8b6 100644 --- a/README.md +++ b/README.md @@ -65,8 +65,21 @@ Here each group member gets a section where they, as an individual, detail what Will be creating the backend of the project, namely the procedures for each tool that will be in the GUI. These procedures will include white balance adjustment, red-eye correction, simple drawing tools, gamma level adjustment, (de)saturation, and more. For milestone one, I will have implemented the procedures to handle the loading and displaying of the desired image. For milestone two, I will have implemented the level-correction procedures (RGB, white balance, gamma, saturation). For the final deliverable, I will have implemented the drawing tools (paintbrush, eraser, etc.). ### Eric Wang -##Need more stuff -Will work on the front end, which would be the GUI procedures itself. This would include creation of a file input/output system, where files are able to be saved after editing, along with confirmation windows and sliders for various settings. In addition, toolbars will be created with options and icons will be made as shortcuts to the associated functions. Milestone one will ahve the general framework of the GUI and toolbars done, with a drawable canvas ready. Milestone two will be icons and the link to their associated action, along with rotating the image and resizing. The final deliverable will be a complete product with full funtionality, like undo, redo, cutting, cropping, and pasting the image. + +Will work on the front end, which would be the GUI procedures itself. This would include creation of a file input/output system, where files are able to be saved after editing, along with confirmation windows and sliders for various settings. In addition, toolbars will be created with options and icons will be made as shortcuts to the associated functions. +Milestone One +-General framework of GUI done +-Canvas ready for the image +-Toolbars Present + +Milestone Two +-Icons and link to their associated action. +-Toolbars functionality, like save and close. +-Resizing and rotating the image also there, with a new popup window and slider adjustment. + +Final +-Full functionality +-This would be cut, crop, paste, undo, redo. ## Proposal Presentation Link [The link is here.][link] From ad3358e577d2a202cac7f4d1896a833269db5df3 Mon Sep 17 00:00:00 2001 From: jarzelia Date: Tue, 7 Apr 2015 01:34:26 -0400 Subject: [PATCH 05/13] Update README.md --- README.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/README.md b/README.md index 000c8b6..d4f5f44 100644 --- a/README.md +++ b/README.md @@ -67,18 +67,27 @@ Will be creating the backend of the project, namely the procedures for each tool ### Eric Wang Will work on the front end, which would be the GUI procedures itself. This would include creation of a file input/output system, where files are able to be saved after editing, along with confirmation windows and sliders for various settings. In addition, toolbars will be created with options and icons will be made as shortcuts to the associated functions. + Milestone One + -General framework of GUI done + -Canvas ready for the image + -Toolbars Present Milestone Two + -Icons and link to their associated action. + -Toolbars functionality, like save and close. + -Resizing and rotating the image also there, with a new popup window and slider adjustment. Final + -Full functionality + -This would be cut, crop, paste, undo, redo. ## Proposal Presentation Link From 1a5e3793f52c9dc5d9b3f5ce9a220aa2f1fcdd5c Mon Sep 17 00:00:00 2001 From: jarzelia Date: Tue, 7 Apr 2015 01:35:07 -0400 Subject: [PATCH 06/13] Update README.md --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index d4f5f44..af5c6e3 100644 --- a/README.md +++ b/README.md @@ -68,7 +68,7 @@ Will be creating the backend of the project, namely the procedures for each tool Will work on the front end, which would be the GUI procedures itself. This would include creation of a file input/output system, where files are able to be saved after editing, along with confirmation windows and sliders for various settings. In addition, toolbars will be created with options and icons will be made as shortcuts to the associated functions. -Milestone One +*Milestone One* -General framework of GUI done @@ -76,7 +76,7 @@ Milestone One -Toolbars Present -Milestone Two +*Milestone Two* -Icons and link to their associated action. @@ -84,7 +84,7 @@ Milestone Two -Resizing and rotating the image also there, with a new popup window and slider adjustment. -Final +*Final* -Full functionality From cb97c4cf3281d316958d23e7863ee7a6ea92f27c Mon Sep 17 00:00:00 2001 From: Nathan Goss Date: Tue, 7 Apr 2015 12:36:36 -0400 Subject: [PATCH 07/13] Update README.md --- README.md | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index af5c6e3..9667e3d 100644 --- a/README.md +++ b/README.md @@ -26,23 +26,18 @@ Your team will have two minutes to present. Create presentation with two or thre These days, everything is documented by photos. People take them every day, both of themselves and their lives. Sometimes, these photographers (both amateur and professional) need to make changes to their photos, but they don't want to spend money on expensive photo-editing suites to do so. That's where Photobench comes in. Photobench is a Racket-based photo-editing program which has an emphasis on maintaining the abstraction barrier between the user and the components that actually make up the image. ### Problem Analysis -Explain what approaches from class you will bring to bear on the problem. Be explicit and succinct. +The main idea from class which we will be using in this project is the idea of building an abstraction barrier between the user and the program. This barrier will be the tools provided for the user, which will each dispatch, in different ways, the underlying procedures. ### Data set or other source materials Since this is a photo editor, the data used will be inputted by the user. This data will be images in bitmap, and the work will be done directly on the image itself. The image that the user inputs should be ready to use, as Racket will convert images into a bitmap format. -Do your homework here: if you are pulling data from somewhere, actually go download it and look at it. Explain in some detail what your plan is for accomplishing the necessary processing. - -If you are using some other starting materails, explain what they are. Basically: anything you plan to use that isn't code. - ### Deliverable and Demonstration The end product of this project will be a fully functional Photobench program. As a live demonstration of this program, we will run the suite of tools on a sample image, showing things such as painting, desaturation, and red-eye removal. ### Evaluation of Results -How will you know if you are successful? -If you include some kind of _quantitative analysis,_ that would be fantastic. +Our level of success will be based on the effectiveness of each tool in our toolset. This will be judged on a case-by-case basis for each tool independently. ## Work Plan and Schedule Explain how you will go from proposal to finished product. Write your general plan here. @@ -53,16 +48,29 @@ You will be expected to turn in code, documentation, and data (as appropriate) a In this general plan, and in the deliverables below. ### First Milestone (04-13) -What exactly will be turned in on this day? +For this milestone, the deliverable will be a basic GUI which has toolbars and a canvas, which can load and display the user's desired image. It will not have much functionality beyond that at this point. ### Second Milestone (04-21) -What exactly will be turned in on this day? +For this milestone, the deliverable will be a more advanced GUI, with icons for each tool, functionality for saving, closing, resizing, and level-correction procedures (RGB, white balance, gamma, saturation). ## Group Responsibilities Here each group member gets a section where they, as an individual, detail what they are responsible for in this project. Each group member writes their own Responsibility section. Include the milestones and final deliverable. ### Nathan Goss Will be creating the backend of the project, namely the procedures for each tool that will be in the GUI. These procedures will include white balance adjustment, red-eye correction, simple drawing tools, gamma level adjustment, (de)saturation, and more. For milestone one, I will have implemented the procedures to handle the loading and displaying of the desired image. For milestone two, I will have implemented the level-correction procedures (RGB, white balance, gamma, saturation). For the final deliverable, I will have implemented the drawing tools (paintbrush, eraser, etc.). +*Milestone One* +-Procedures for loading and displaying the desired image + +*Milestone Two* +-RGB balance +-White balance +-Gamma adjustment +-Saturation + +*Milestone Three* +-Paintbrush +-Eraser +-Other drawing tools ### Eric Wang From e1aaa9b3e926bba070498457593a47417616d34f Mon Sep 17 00:00:00 2001 From: Nathan Goss Date: Tue, 7 Apr 2015 12:37:36 -0400 Subject: [PATCH 08/13] Update README.md --- README.md | 31 +++++++------------------------ 1 file changed, 7 insertions(+), 24 deletions(-) diff --git a/README.md b/README.md index 9667e3d..efde5d2 100644 --- a/README.md +++ b/README.md @@ -1,26 +1,3 @@ -# FP4-proposal -Project Proposal is due 2015-04-08 at 8am - -Produce a plan for your final project, and prepare an in-class presentation. - -Ask questions, as always, [on piazza!][piazza] - -## Written Proposal Instructions - -Teams will submit ONE written proposal, with sections that each member has done individually detailing their proposed contributions. The submission will be on github, as a pull request of this very file. Below is a template proposal report. - -You should be proposing something that you have high confidence that you can achieve, and the proposal should project that confidence. -The proposal should be no longer than necessary, but long enough to include critical detail. Three pages is appropriate. Diagrams are welcome. - -Remember, you can do some neat [formatting things with Markdown.][markdown] - -## In-Class Presentation Instructions -Teams will each deliver an in-class presentation. **Presentations will be Wednesday, April 8** (and Friday, April 10 as necessary). The presentation material is due on April 8 by 9 am for everybody. [See piazza for full schedule.][piazza] - -Your team will have two minutes to present. Create presentation with two or three slides. Make the slides in google drive, and share the public-viewable link at the bottom of this report. The day of presentations, I'll have the list of links on the display computer, so each team can simply click their link and begin. - -(Template follows. You may delete this line and all above it. Please edit the following template to create your report.) - # Project Title: Photobench ### Problem Statement These days, everything is documented by photos. People take them every day, both of themselves and their lives. Sometimes, these photographers (both amateur and professional) need to make changes to their photos, but they don't want to spend money on expensive photo-editing suites to do so. That's where Photobench comes in. Photobench is a Racket-based photo-editing program which has an emphasis on maintaining the abstraction barrier between the user and the components that actually make up the image. @@ -57,19 +34,25 @@ For this milestone, the deliverable will be a more advanced GUI, with icons for Here each group member gets a section where they, as an individual, detail what they are responsible for in this project. Each group member writes their own Responsibility section. Include the milestones and final deliverable. ### Nathan Goss -Will be creating the backend of the project, namely the procedures for each tool that will be in the GUI. These procedures will include white balance adjustment, red-eye correction, simple drawing tools, gamma level adjustment, (de)saturation, and more. For milestone one, I will have implemented the procedures to handle the loading and displaying of the desired image. For milestone two, I will have implemented the level-correction procedures (RGB, white balance, gamma, saturation). For the final deliverable, I will have implemented the drawing tools (paintbrush, eraser, etc.). +Will be creating the backend of the project, namely the procedures for each tool that will be in the GUI. These procedures will include white balance adjustment, red-eye correction, simple drawing tools, gamma level adjustment, (de)saturation, and more. + *Milestone One* -Procedures for loading and displaying the desired image *Milestone Two* -RGB balance + -White balance + -Gamma adjustment + -Saturation *Milestone Three* -Paintbrush + -Eraser + -Other drawing tools ### Eric Wang From a76cdfa737c08b62dfcd197d4729cfd12dd06d08 Mon Sep 17 00:00:00 2001 From: Nathan Goss Date: Tue, 7 Apr 2015 12:38:30 -0400 Subject: [PATCH 09/13] Update README.md --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index efde5d2..4a8c713 100644 --- a/README.md +++ b/README.md @@ -37,9 +37,11 @@ Here each group member gets a section where they, as an individual, detail what Will be creating the backend of the project, namely the procedures for each tool that will be in the GUI. These procedures will include white balance adjustment, red-eye correction, simple drawing tools, gamma level adjustment, (de)saturation, and more. *Milestone One* + -Procedures for loading and displaying the desired image *Milestone Two* + -RGB balance -White balance @@ -49,6 +51,7 @@ Will be creating the backend of the project, namely the procedures for each tool -Saturation *Milestone Three* + -Paintbrush -Eraser From 395f3251d11198272b0deb9a480713f2010ce8d1 Mon Sep 17 00:00:00 2001 From: jarzelia Date: Tue, 7 Apr 2015 12:44:40 -0400 Subject: [PATCH 10/13] Update README.md --- README.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 4a8c713..07c62f7 100644 --- a/README.md +++ b/README.md @@ -36,11 +36,11 @@ Here each group member gets a section where they, as an individual, detail what ### Nathan Goss Will be creating the backend of the project, namely the procedures for each tool that will be in the GUI. These procedures will include white balance adjustment, red-eye correction, simple drawing tools, gamma level adjustment, (de)saturation, and more. -*Milestone One* +**Milestone One** -Procedures for loading and displaying the desired image -*Milestone Two* +**Milestone Two** -RGB balance @@ -50,7 +50,7 @@ Will be creating the backend of the project, namely the procedures for each tool -Saturation -*Milestone Three* +**Milestone Three** -Paintbrush @@ -62,7 +62,7 @@ Will be creating the backend of the project, namely the procedures for each tool Will work on the front end, which would be the GUI procedures itself. This would include creation of a file input/output system, where files are able to be saved after editing, along with confirmation windows and sliders for various settings. In addition, toolbars will be created with options and icons will be made as shortcuts to the associated functions. -*Milestone One* +**Milestone One** -General framework of GUI done @@ -70,7 +70,7 @@ Will work on the front end, which would be the GUI procedures itself. This woul -Toolbars Present -*Milestone Two* +**Milestone Two** -Icons and link to their associated action. @@ -78,7 +78,7 @@ Will work on the front end, which would be the GUI procedures itself. This woul -Resizing and rotating the image also there, with a new popup window and slider adjustment. -*Final* +**Final** -Full functionality From 82c2f4e51e8d62aef5cca77607840cd3603c43a8 Mon Sep 17 00:00:00 2001 From: jarzelia Date: Tue, 7 Apr 2015 12:45:28 -0400 Subject: [PATCH 11/13] Update README.md --- README.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 07c62f7..bc2993b 100644 --- a/README.md +++ b/README.md @@ -80,9 +80,15 @@ Will work on the front end, which would be the GUI procedures itself. This woul **Final** --Full functionality +-Cut --This would be cut, crop, paste, undo, redo. +-Crop + +-Paste + +-Undo + +-Redo ## Proposal Presentation Link [The link is here.][link] From 0e605dc1d2d04e2438b5ad7008da3e48f86140ed Mon Sep 17 00:00:00 2001 From: Nathan Goss Date: Tue, 7 Apr 2015 14:33:57 -0400 Subject: [PATCH 12/13] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index bc2993b..8249c2c 100644 --- a/README.md +++ b/README.md @@ -50,7 +50,7 @@ Will be creating the backend of the project, namely the procedures for each tool -Saturation -**Milestone Three** +**Final** -Paintbrush From 41e0c34e7aa276edd95d23cf42990a13d44a1e6c Mon Sep 17 00:00:00 2001 From: Nathan Goss Date: Tue, 7 Apr 2015 14:44:03 -0400 Subject: [PATCH 13/13] Update README.md --- README.md | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 8249c2c..cd43004 100644 --- a/README.md +++ b/README.md @@ -17,12 +17,7 @@ The end product of this project will be a fully functional Photobench program. A Our level of success will be based on the effectiveness of each tool in our toolset. This will be judged on a case-by-case basis for each tool independently. ## Work Plan and Schedule -Explain how you will go from proposal to finished product. Write your general plan here. -There are three deliverable milestones to explicitly define, below. The nature of deliverables depend on your project, but may include things like processed data ready for import, core algorithms implemented, interface design prototyped, etc. - -You will be expected to turn in code, documentation, and data (as appropriate) at each of these stages, so take care in writing concrete steps for your schedule. - -In this general plan, and in the deliverables below. +Our general plan for the development of this project will be as follows. First, we will design a basic framework for the product, which will have limited tool functionality but will provide a base for the following steps. Next, we will add some of the tool functionality and improve the GUI to be more advanced. Finally, we will add in the rest of the desired functionality, with a focus on higher-level tools. ### First Milestone (04-13) For this milestone, the deliverable will be a basic GUI which has toolbars and a canvas, which can load and display the user's desired image. It will not have much functionality beyond that at this point. @@ -30,8 +25,10 @@ For this milestone, the deliverable will be a basic GUI which has toolbars and a ### Second Milestone (04-21) For this milestone, the deliverable will be a more advanced GUI, with icons for each tool, functionality for saving, closing, resizing, and level-correction procedures (RGB, white balance, gamma, saturation). +### Final Code Turn-In (05-01) +This will include the entire product, with all of the tools and image functions implemented and represented in the GUI. + ## Group Responsibilities -Here each group member gets a section where they, as an individual, detail what they are responsible for in this project. Each group member writes their own Responsibility section. Include the milestones and final deliverable. ### Nathan Goss Will be creating the backend of the project, namely the procedures for each tool that will be in the GUI. These procedures will include white balance adjustment, red-eye correction, simple drawing tools, gamma level adjustment, (de)saturation, and more. @@ -94,6 +91,4 @@ Will work on the front end, which would be the GUI procedures itself. This woul [The link is here.][link] -[piazza]: https://piazza.com/class/i55is8xqqwhmr?cid=453 -[markdown]: https://help.github.com/articles/markdown-basics/ [link]: https://docs.google.com/presentation/d/1S--tAZMp4S52NcYyCdCmzADmeABylFmv2kQNlapXJd0/edit?usp=sharing