Final Presentation Comp8780 v2.0 -...
Transcript of Final Presentation Comp8780 v2.0 -...
1
Final presentation Comp8780
iMondrianDrawer : Implementation of Mondrian Drawer for iPhones
Supervisor Professor Tom Gedeon
HyeJa (Grace) SeongU4823441
2
Motivation
Piet Mondrian (1872-1944), a Dutch Neo-Plasticistpainter, used abstract images following a simple set of rules.
Many painters and architects are adopting the Mondrian styles
Composition with Red, Yellow and Blue 1921, by Piet Mondrian [1]
3
Motivation: Industrial Designs
4
MondrianDrawer Project at ANU
Initially developed by two students at the ANU for Human Computer Interface (HCI) since 2007 using Jython (2007) Java (2008)
My objective was to implement the Mondrian drawer as an iPhone App by transfering & updating the existing libraries.
5
MondrianDrawer for iPhone
Development Environment Objective-C programming Xcode IDE & Mac OS iPhone Simulator/real iPhone
Tasks Conducted Transferring libraries into Objective-C Verifying algorithms Building user interfaces for iPhone
Rules for “Mondrian-like” Drawing
Simple rules defined by McManus et al. (1993) 1) Solid white background2) All lines are horizontal or vertical, and
either extend to the image boundaries or terminate in the middle of another line
3) All rectangles enclosed by lines have red, blue or yellow colour
6
Initialisation & Imaginary Line Generation
7
Add Line Segments
8
(c) (d)
Add 1st Line Add 2nd Line
Filling Colours
9
Add 3rd Line Fill Colours
Making more Mondrian-like Drawing
Incorporate human assessment feedback.
Evolutionary Algorithm: Natural selection idea, which iteratively eliminates less good individuals and preserves better ones.
As a consequence, all individuals (Mondrian image) within the system tend to be better after several generations.
10
Making more Mondrian-like: Evolutionary Algorithm
11
Random changes yielding a new candidate solution
Recombine elements of existing population
most fit candidates of the population survive
Objective-C
Between C and C++ Developed in Apple
Most MondrianDrawer Java Libraries have been transferred to Objective-C
Issues: iterable, comparable, observable, hash map are not supported in current version Need to be implemented!
12
Demo on iPhone Simulator
13
Conclusions and Future Work
Basic functionalities of Mondrian Drawer have been demonstrated successfully on an iPhone simulator
Testing on a real iPhone requires license fee
Some C++ features such as iterators need to be coded from the scratch
Current codes need optimisation for iPhone.
14