Phot ogram Present ed by: Ohan Oda, Neesha Subr amaniam, Richard J Ng, Seikwon Kim
Overview of t he present at ion Overview of language Tut orials and examples Archit ect ural design Summary and Lessons lear nt
Overview I nt roduct ion What is Phot ogram? Who uses Phot ogram? Why use Phot ogram?
Overview Mot ivat ion Phot oshop has limit ed capabilit y Easy t o writ e lines of codes t han using complicat ed int erf ace of Phot oshop f or complicat ed image processing t asks –Example: Phot omont age Some of t he t asks are t ime consuming using Phot oshop
Overview Feat ures Easy-t o-use: J ava-like-synt ax Port able Powerf ul Expandable
Tut orial How t o use Phot ogram Compiler: PGCompiler How t o compile a .pg program – C:\ j ava PGCompiler PGSampleProgram.pg – C:\ j avac PGSampleProgram.j ava How t o run a .pg program – C:\ j ava PGSampleProgr am
Examples Collage I mport ing f unct ions and globals f rom ot her .pg f iles.
Examples I mage Processing
Examples Opt ical Flow Used t he library f unct ions f or drawing lines and circle in t he out put image.
Examples Phot oMont age N o. of images in dat abase: 2500 Algorit hm: First mat ch t he average RGB of t he image pat ch wit h t he image in t he dat abase, t hen use cross-correlat ion t o choose t he best image.
Archit ect ural design
Archit ect ural design Front -end Lexer – Produces a t oken st ream Parser – Creat es AST Walker – Calls Semant ic Analyzer f or Semant ic Er ror Analysis
Archit ect ural design Back-end PG Library - Library of Built -in Obj ect s and Funct ions Semant ic Analyzer –Builds Symbol Table, Scopes, et c. Code Generat or –Convert s t he PG code int o J ava Code
Test ing Phase I – Grammar Phase I I – Grammar – Maj orit y was Walker and Semant ic Analyzer Phase I I I – Final Sample
Test ing Grammar Test ing – Consist s of one long f ile – As development , t est grows larger – Test whet her it par ses well
Test ing Phase I I (Semant ic) – Consist s of small t est f iles – Assume knowing not hing – Most of possible pr ogramming
Test ing Phase I I I (Final Checking) – Check whet her an act ual program runs – Sample codes
Lessons Learned Keeping in t ouch wit h group members is very essent ial f or successf ul complet ion of t he proj ect . Don’t ignore prof essor’s advice regarding CVS. Use J Builder f or developing your J ava code. Writ e small t est programs f or each st age.
Ref erences Zhou, Tiant ian, Feng, Hanhua, Ra, Yong Man, Lee, Chang Woo. “Mx: A programming language f or scient if ic comput at ion.” ht t p:/ / www1.cs.columbia.edu/ ~sedwards/ classes/ 2 003/ w4115/ Mx.f inal.pdf , May 2003. Rit chie, Dennis M. C Ref erence Manual . Bell Telephone Laborat ories, 1975. ht t p:/ / www.phot omosaic.com/ rt / f ineart .ht m
Recommend
More recommend