460 likes | 583 Views
FotoGazmic Software. (From left to right: Chad Zbinden, Josey Baker, Rob Mills, Myra Bergman, Tinate Dejtiranukul). Client & End User. Professor Bernard Waxman. Upper Management. Professor Xudong Yu. Organization Plan. Dr. Xudong Yu Upper Management. Dr. Bernard Waxman Client.
E N D
FotoGazmic Software (From left to right: Chad Zbinden, Josey Baker, Rob Mills, Myra Bergman, Tinate Dejtiranukul)
Client & End User Professor Bernard Waxman
Upper Management Professor Xudong Yu
Organization Plan Dr. Xudong Yu Upper Management Dr. Bernard Waxman Client Robert Mills Project Leader Josey Baker Lead Documenter Chad Zbinden Lead Designer Myra Bergman Lead Analyzer Tinate Dejtiranukul Lead Tester
Purpose of the System • Image Enhancement • Color & Density • Select Portions of the Image and Identify • Predetermined List of Object Types • Automatically Detect an 18% Gray Card
Gray Card • A card that reflects a known percentage of the light falling on it. • Has a neutral gray finish that has an 18 percent reflectance. • Used to provide a known gray tone in color work.
Gray Card Correction Original Image Corrected Image • This example shows the Global Enhancement correction applied to the main image.
Objectives and Success Criteria • Document, Design, Implement, and Produce • Software can Run on any PC that meets the Hardware Requirements • Simplify the Task of Color and Density Correction • Enhance the Overall Quality of Digital Image
Functional Requirements • Graphical User Interface • Open, Read, Display, and Save TIFF images • Preview Feature • One Level Undo Feature • Correction • Automatic and Manual Corrections • Single selection or multiple selections • Full Amount or Percentage of Suggested Correction • Entire Image or Selected Portion(s)
Functional (cont.) • Selection Tool • Pixel Group, Ellipse, or Rectangle • Identify the Area • Predetermined List of Object Types • Suggested Correction • Stored RGB Values
Functional (cont.) • Image Display • Default—1 to 1 • Display Options • Zoom Capability • Scroll Bars
Nonfunctional Requirements • User Interface and Human Factors • Simple, User-friendly Graphical Interface • Tool Selection Palette • Integrated Help System • Documentation • Well Documented • Hardware Consideration • IBM compatible • 1 Ghz Pentium IV, 256 MB Ram • 24-bit true color, 1280x1024 - graphics card
Nonfunctional (cont.) • Performance Characteristics • Perform Corrections in a Timely Manner • Error Handling and Extreme Conditions • Program Should NOT Crash • Appropriate Error Messages
Nonfunctional (cont.) • Quality Issues • High Quality Corrected Images • Minimal Distortion • Aesthetically Correct • Density and Color • System Modifications • Easy to Modify Without Major Changes to System Design • Possibility for Further Development
Client PC File Control Assistance Interface Enhance View Architecture
Subsystems • File Control • Initialize system variables • Open, close, and save images • Undo the last action • Exit
Subsystems (cont.) • View • Display an image to the screen • Zoom functionality • Scrolling functionality
Subsystems (cont.) • Enhance • Manual and auto enhancement functionality • Find Gray Card • Selection tools • Pixel group • Ellipse • Rectangle • Draw, Identify, and Average selections • Global or local change • Correction factor
Subsystems (cont.) • Assistance • Integrated help feature • Reference
Persistent Data Management • All persistent data is stored using a file system. • TIFF files are used to store the images files. • RGB values for the predetermined object types are stored in a text file containing markup tags.
Stored Objects File <n>Grass<v>131, 157, 59<e> <s2>Caucasion<s1>Skin<n>Average<v>200, 145, 120<e> <s2>Indian<s1>Skin<n>Average<v>175, 115, 65<e> <s2>African<s1>Skin<n>Light<v>191, 140, 110<e> <s2>African<s1>Skin<n>Medium<v>170, 135, 90<e> <s2>African<s1>Skin<n>Dark<v>115, 80, 70<e> <end>
Main Interface • Main interface with a TIFF image loaded.
Select Gray Card • Allows user to manually select gray card
Auto Enhance Preview • Dynamically displays preview of changes as the slider control is moved.
Manual Enhance Preview • Dynamically displays preview of changes as the slider control is moved.
Manual Enhance Preview • Dynamically displays local and global change as radio button is changed.
Process Plan • Evolutionary Delivery • Client • Early Prototype • Early Discovery • Difficulties with Specific Features • Delivery • Product with the Most Important Functionality • No room for extension of deadline
Implementation (cont.) • Development Platform • Microsoft Visual C++ 6.0 • User Interface • Microsoft Foundation Class • Underlying system • C++ • CxImage Library • Open source libraries for image processing
Demonstration • FotoGazmic Software
Module Testing • Performed numerous test cases on each code module • Documented test cases and results • Lead tester in charge
Integration Testing • Individual Components • Assessed Dependencies of Modules
System Testing • Ensured Functional and Nonfunctional Requirements • Included Functional and Performance Testing
Acceptance Testing • Internal Acceptance Test • Team Members • Acceptance Test with Client
Deployment & Training • Installation Plan • We did not install the FotoGazmic software package on any of the clients’ computers. • Source code and a compiled executable are available on our project web site. • Full documentation of the software is provided. • Installation is accomplished using a standard setup package.
Deployment & Training (cont.) • For FotoGazmic users, we have created: • An integrated help system
Retrospective Thoughts • We needed better version control • Evolutionary delivery worked extremely well • Dividing the project among team members worked well • We learned a lot about software development & project planning • Creating a system from the ground up was quite difficult!