IMAGE
Daniel
Harmon
Michael
Ryan
Stu
SPLITTERS
RabessKeenerDackKaoHaas
BACKGROUND
People are taking photos more than ever Modern users are much more computer
savvy than in the past, and therefore expect more from a retail photofinishing solution
To cater to this new user base, Kodak envisioned a tool that would give customers even greater control over their photos
Also, to keep up with the current trends influencing modern UIs, Kodak also desired a new user interface
PROJECT REVIEW
To meet their needs, Kodak asked us to: Develop a splitting algorithm that can be used
in the current Kodak Picture Kiosks Design a user friendly interface and modernize
the current Kodak Kiosk user interface
PROJECT REVIEW (CONT)
The algorithm would: take a source image and split it into 2 or more
image panes horizontally or vertically use multiple aspects of computer vision to to
analyze photos and provide these splits The UI would:
give users a more intuitive experience, while not overloading them with options and features
be user friendly and modernize the current Kodak Kiosk user interface
REQUIREMENTS Algorithm splits images 2, 3, and 4 ways, vertical and
horizontal Algorithm artistically splits images Ability to nudge the image Ability to zoom the image Configurable algorithm settings Support app for demo and testing of algorithm Windows installer/Installation procedures 3d effects Run on a single Windows XP embedded / Vista
machine Run in Internet Explorer in “kiosk” mode Coded in C# or in C and C++ that can be accessed
from C# components Controllable via a 15” Touch Screen
High Level Design
THE ALGORITHM (in detail)
Able to artistically split 80% of images into 2, 3, or 4 frames.
Our solution uses: Face detection Edge detection Color detection
We also have an auto function that finds the best split out of all possible split types
Processing
THE NEW USER INTERFACE (in detail)
Users have become more technologically savvy They expect more advanced features in a
business-class photo editing solution Our solution utilizes new technology,
providing customers with a faster, more powerful experience
Our UI draws its control scheme from other popular UIs to give users a familiar, intuitive interface to interact with
THE NEW USER INTERFACE (CONT.)
Apple’s cover flow was a big inspiration for our application
Easy to use and move through many images The controls translate well to a touchscreen
interface
THE NEW USER INTERFACE (CONT)
Large, clearly labeled buttons for each function make it easy for the user to quickly find the action they want Nudge image around to select region of interest Zoom image in and out to focus on image
subjects Graphical split buttons
Consistent layouts across pages keep the user from having to reorient themselves when moving through the program flow
PROJECT RESULTS Features implemented
Algorithm splits images 2, 3, and 4 ways, vertical and horizontal
Ability to nudge the image both by dragging it and clicking buttons
Ability to zoom the image Configurable algorithm settings Support app for demo and testing of algorithm Windows installer/Installation procedures Meets machine specs Welcome animation Carousel Ability to save split photos and view them on a
preview page Face detection Edge detection Color detection
PROJECT RESULTS (CONT)
Features still to be developed “Remove” a picture from the preview screen
Stretch goals we didn’t get to View of the region of interest on the main screen Hook up with previous teams photo organizer
project Cutting or tearing animations when splitting Color themes for the application Memento stack to support “undo”
CHALLENGES
Learning new technologies Windows Presentation Foundation Image manipulation algorithms OpenCV
Scheduling Team availability conflicts Learning too many tools Trying to fit in too many features
Understanding the requirements Designing an intuitive interface Determining how the different aspects of the
algorithm should interact
REFLECTIONS
Things that went well Very interesting problem domain for us OpenCV was useful (but not without its
problems!) Use of WPF tutorials / open source projects Great team dynamics Good customer feedback/communication Availability of experts in the field Spiral methodology worked well for our needs Planned our schedule well for the amount of
work we had to do Previous Kodak team had document
management tools available for us to use
REFLECTIONS (CONT)
Project Hurdles OpenCV’s C# wrapper wasn’t perfect for our
needs Conflicting schedules and limited free time made
it hard to meet sometimes Experienced CVS difficulties early in project life Misinterpreted initial requirements, which cost us
some development time Had a hard time being granular enough in
reporting our activities and being transparent enough in our efforts to our sponsors
Some bugs were very pesky to squash
DEMO
Less talk, more action!
QUESTIONS
Top Related