PROPOSAL OF A MAJOR IN GEOMETRIC AND VISUAL COMPUTING BACKGROUND The last decade has witnessed a remarkable emergence and maturing of technologies dealing with visual and geometric data. Many methods that were in the domain of research labs have become classical and standard industrial practice. Recent cool examples include Google Goggles (a web service allowing the user to take a street image with a mobile phone and get information about the depicted objects), Google Street View and Microsoft Photosynth (photo tourism service, based on computer vision algorithms for building 3D models of cities from very large sets of images), Microsoft Kinect (an add-on to Xbox console allowing gesture-based control, based on computer vision technology to scan the 3D scene in real time and pattern recognition algorithms to analyze the gestures), and the movie Avatar (setting a new standard both in computer graphics realism, but also remarkable for the use of very sophisticated 3D vision technologies during production). These examples belong to the field of Geometric and Visual Computing, dealing with processing and analyzing visual and geometric information. The world we live in is geometric, both on the physical (objects that surround us) and abstract levels (representation of data). Hence, diverse application areas must deal with geometric information. Geometric and Visual Computing is a combination of computer science (discrete algorithms, data structures, software engineering), mathematical modeling (theoretical foundations and computational methods), which are used in the domains of computer graphics, computer vision, 2D and 3D signal processing, and pattern recognition. Applications include CAD/CAM systems, geology, geographic information systems, search engines, and navigation systems, computer games, robotics, molecular biology, medical imaging, drug design, computer aided medicine, computer games, home entertainment, and movie industry, some of which have already brought a revolution into our life. DEMAND Various aspects of geometric computing are required for jobs dealing with CAD/CAM systems, VLSI, geographic information systems, engineering, numerical simulations, special effects and graphics (e.g. movie industry), image processing and analysis, computer vision, and multidimensional data analysis. These jobs demand specialists combining strong theoretical background in math, expertise in geometry, knowledge of computational methods, and software development skills. In Switzerland, prominent companies include Google (computer vision), Disney (computer graphics and advanced numerical methods), IBM (nanotechnology and electronic design automation), as well as Liberovision (realistic 3D displays), Procedural Inc (3D city modeling), Meteomedia (weather visualization). SIMILAR PROGRAMS Mathématiques/Vision/Apprentissage (MVA) – joint Master program between ENS, Ecole Polytechnique, ENPC, and Ecole Centrale in France Geometric Modeling and Scientific Visualization – KAUST. Computer Visualistik – University of Magdeburg UNIQUENESS Using geometry as a common denominator allows to present topics in graphics, vision, and pattern recognition in a unified and consistent way. Compared to other programs that offer separate and unrelated courses, the proposed program has tightly-coupled and related courses that, if taken together, allow the students to see a broader perspective of the field, and use the same tools and background. The proposed program is based on a synergy between curricula in (i) informatics, (ii) applied mathematics and numerical methods, and (iii) domain-specific curricula in computer graphics, computational geometry, image and geometry processing, computer vision and pattern recognition. In particular, the program is a nice way to use tools and methods taught also in computational science in different and less traditional domains (e.g., using numerical solutions of diffusion equations for image enhancement). Moreover, some of the methods taught (e.g. geometric data structures and algorithms) are useful in many other areas of informatics as well. PROGRAM TECHNICAL DETAILS The study program consists of three blocks with five courses each: 1. The mandatory basic courses of the Master (30 ECTS), 2. the tagged courses that form the “core” of this major (30 ECTS), 3. additional elective courses (30 ECTS). The core courses on Geometrical Algorithms (Papadopoulou), Computer graphics and Geometry processing (Hormann) already exist, while the courses on Geometric image processing and computer vision and Geometric shape analysis (Bronstein) will be new. RELATIONS BETWEEN TOPICS IN GEOMETRIC AND VISUAL COMPUTING Color code: Blue – mathematical background Orange – algorithmic background (geometrical algorithms and data structures) Green – technical background (visualization techniques, GPU programming) Cyan – image processing and computer vision Red – geometry processing Purple – pattern recognition STUDY PROGRAM (new courses in italics, core courses in bold) Semester 1: Basic courses Algorithms and Complexity Software Engineering Programming Languages 6 6 6 Tagged courses Computer Graphics PDEs – Math Modeling and Numerical Simulations 6 6 Semester 2: Tagged courses Geometrical Algorithms Geometric image processing and computer vision Geometry processing Elective courses e.g. Modelling, Simulation, and Optimization / Linear and Nonlinear Multiscale Solution Strategies / Computational Fluid Dynamics / Software Architecture + Lab / etc. 6 6 6 12 Semester 3: Basic courses Intelligent systems Distributed systems 6 6 Tagged courses Geometric shape analysis 6 Elective courses e.g. Heuristics + Lab / Computer Aided Verification / Introduction to Advanced Computational Methods / etc. Semester 4: Master thesis 12 30 COURSE SUMMARIES Computer graphics In this course we cover the following topics: ray tracing, local illumination, geometric transformations, 3D object modelling, mesh processing, graphics pipeline, rasterization, texture mapping. While the theoretical foundations are taught in the lectures, the homework assignments and exercise sessions cover the practical aspects, including the implementation of all techniques. The latter is done using C (programming language), Qt (GUI library), and OpenGL (graphics API). For all programming tasks we provide a rough framework, so that the students can concentrate on implementing the core methods and algorithms. Geometrical algorithms Computational geometry is a subfield of design and analysis of algorithms dealing with geometric problems. The course will cover various techniques needed in designing and analyzing efficient algorithms and data structures for computational problems in discrete geometry such as convex hulls, triangulations, geometric intersections, Voronoi diagrams, arrangements of lines, geometric retrieval, range searching, arrangements of lines and hyperplanes. Computational geometry is well related to a variety of application domains in which geometric algorithms play a fundamental role, such as computer-aided design (CAD), pattern recognition, image processing, computer graphics, information retrieval, geographic information systems (GIS), robotics, and many others. Geometry processing 3D geometry is fundamental to many applications, including virtual characters for animated motion pictures, interactive design of cars and airplanes, and complex simulations of materials and matter. This course covers the whole 3D geometry processing pipeline from measuring real objects with laser scanners or tomography to finally rendering the 3D geometry on screen. Geometric image processing and computer vision The course focuses on geometric computational methods and algorithms in image processing and understanding. Many problems in these fields can be formalized using the notions of calculus of variations and brought down to the solution of a partial differential equation, such as the non-linear diffusion equation. Examples of applications shown will include: shape from stereo reconstruction, color image enhancement and segmentation, edge-preserving image denoising, edge detection and integration, mathematical morphology. Geometrics shape analysis Geometric shapes are used to model the world around us at all levels, from macro to nano, and the need to study and analyze such shapes and model their behavior arises in a wide spectrum of applications, ranging from medicine to security. This course covers basic notions in mathematical modeling of shape similarity, geometric invariants, and problems of shape comparison and correspondence. One of the main emphases of the course will be on practical methods, and examples of applications from pattern recognition and computer graphics will be shown. ACTIONS TAKEN SO FAR 1. Integration of all five basic courses into the curriculum as requested by the general rules of the master (some of them were missing before). 2. Simplified the study program so that only the five core courses are mandatory and the remaining courses are elective (before we had two versions, one with electives from the majors except Comp. Sc., one with electives mainly from the major in Comp. Sc.). 3. An additional page for the Master Booklet was created. 4. All information about this major (or rather “specialization”) is available online at www.master.inf.usi.ch. 5. Kick-off even on May 13, 2011 with Markus Gross (Director of Disney Research in Zurich, and Professor at ETH); attendance from the student side was very good (about 75–100 students attended), but very few faculty members and people from outside USI came.