.: SIBGRAPI 2012 - Tutorials :.

Citation format

@inproceedings{key,
author = {...},
title = {...},
year = {2012},
month = {august},
booktitle = {SIBGRAPI 2012 (XXV Conference on Graphics, Patterns and Images Tutorials (SIBGRAPI-T))},
editor = {M. Walter, Lijun Yin},
address = {Ouro Preto, MG, Brazil},
url = {http://www.decom.ufop.br/sibgrapi2012/index.php/call/tp}
}

Survey Papers

T1 - Cloud and mobile Web-based graphics and visualization (handouts)

Haim Levkowitz (University of Massachussetts Lowell).

Abstract: Cloud computing is becoming one of the most prevailing computing platforms. The combination of mobile devices and cloud-based computing is rapidly changing how users consume and use computing resources. With the introduction and penetration of HTML5, and, in particular, its visual capabilities in the form of the canvas element, the implementation of high-quality Web-based graphics has become a reality. Indeed, WebGL offers capabilities comparable to the traditional OpenGL utilizing cloud-based computing resources. It is now feasible to have high-performance graphics and visualization ``in your palm,'' utilizing a mobile device as the front end interface and the display, but performing all the graphics ``heavy lifting'' on a cloud-based platform. We argue that this will become the most common platform for computer graphics and visualization in the not-too-distant future. The goals of this course are to make students familiar with the underlying technologies that make this possible, including (but not limited to) cloud-based computing, mobile computing, their combination, HTML5 and the canvas element, the WebGL graphics library, general Web-based graphics and visualization, and Web-based interactive development environments. Who should attend: researcher, practitioners, and students focused on, interested in, or aspiring to enter the fields of cloud computing, mobile computing, graphics, visualization, Web-based environments and their applications are encouraged to attend. Students will gain a deep understanding of these novel techniques and technologies, and will become capable of applying their knowledge to develop interactive mobile- and cloud-based graphics and visualization applications, which will provide them with soon-to-be highly-desirable skills. Students with previous knowledge of and experience in interactive computer graphics and visualization will gain much more value from this tutorial.

T2 - GPU programing with GLSL (handouts)

Rodrigo de Toledo (UFRJ), Thiago Gomes (UFRJ).

Resumo: Este trabalho propõe um overview sobre o pipeline gráfico programável da forma como temos hoje. Nossa proposta é criar um ambiente de aprendizado baseado em Coding Dojo. Como focaremos no ensino de programação em GPU, propomos a utilização de uma ferramenta de abstração de código de aplicação - o ShaderLabs, desenvolvida pelos mesmos autores deste tutorial.

T3 - Interactive Graphics Applications with OpenGL Shading Language and Qt (handouts)

Joao Paulo Gois (UFABC), Harlen Batagelo (UFABC).

Abstract: The goal of this tutorial is to enable the attendants to develop interactive graphics applications with OpenGL using the Qt framework. One of the powers of the Qt framework is to allow for easy development of professional cross-platform applications using C++. In particular, Qt offers a full-featured framework to render OpenGL contexts and several classes that make easy the development of interactive graphics applications using OpenGL and OpenGL Shading Language (GLSL). For instance, Qt provides classes to manipulate matrices, vectors, OpenGL vertex buffer objects, textures and GLSL programs. As a by-product of the present tutorial we will illustrate that Qt is also a suitable framework to didactic purposes where, not only it can easily replace traditional window management libraries such as GLUT (OpenGL Utility Toolkit), but also offers the possibility to develop interactive sophisticate object-oriented applications.

T4 - Kinect and RGBD Images: Challenges and Applications (handouts)

Leandro Cruz (IMPA), Djalma Lúcio (IMPA), Luiz Velho (IMPA).

Abstract: The Kinect is a device introduced in 2010 as an accessory of XBox 360. The data acquired has different and complementary natures, combining geometry with visual attributes. For this reason, the Kinect is a flexible tool that can be used in applications of several areas, such as: Computer Graphics, Image Processing, Computer Vision and Human-Machine Interaction. In this way, the Kinect is a widely used device in the industry (games, robotics, theater performers, natural interfaces, etc.) and in research. Initially in this tutorial we will present the main techniques related to the acquisition of data: capturing, representation and filtering. The data consists of a colored image (RGB) and depth information (D). This structure is called RGBD Image. After that, we will talk about tools available for developing applications on various platforms. We will also discuss some recent developed projects based on RGBD Images. In particular, those related to Object Recognition, 3D Reconstruction, and Interaction. In this tutorial, we will show research developed by the academic community, and some projects developed for the industry. We intend to show the basic principles to begin developing applications using Kinect, and present some projects developed at the VISGRAF Lab. And finally, we intend to discuss the new possibilities, challenges and trends raised by Kinect.

T5 - Looking at People: Concepts and Applications (survey paper not available and handouts under copyright restrictions)

William Robson Schwartz (UFMG).

Abstract: The understanding of activities performed by humans in videos presents a great interest of the Computer Vision community. To achieve a precise and accurate interpretation of the activities being performed in a scene, tasks such as detection, recognition, tracking, person re-identification, pose estimation, and action recognition have to be performed accurately to provide enough information to inference systems responsible for recognizing such activities. Such tasks belong to the application domain of the Computer Vision called Looking at People, which has as general goal the analysis of images and videos containing humans. Problems in this domain present increasing interest of the scientific community due to their direct application to areas such as surveillance, biometrics and automation, which can provide significant technological advances. Due to the high degree of dependence between the tasks (e.g., the individual action recognition depends on the correct tracking and detection of a person), they can be affected by error propagation and amplification during the process. In such case, tasks performed later (e.g., action recognition) might not be accomplished accurately due to the large amount of incorrect results obtained by previous tasks (e.g., poor detection results that do not locate correctly the person that is performing an action). Therefore, there is the need that each task be performed in a robust manner. A promising approach being employed in these problems is the use of multiple feature descriptors simultaneously so that richer visual information contained in the scene is captured. This tutorial focuses on the concepts of looking at people and tasks belonging to this domain and is structured in four parts. First, the concepts and the importance of the domain to the academic community and the development of the technology will be presented. Second, the extraction of the visual information through the use of feature descriptors will be discussed. Third, the main goals, challenges, connections and possible effects of error propagation for each task in the domain (e.g., background subtraction, human and face detection, face recognition, person tracking and re-identification, pose estimation and action recognition) will be discussed. Finally, a promising approach based on the combination of multiple feature descriptors through the statistical method called Partial Least Squares will be discussed and its application to several computer vision tasks will be described. At the end of this tutorial, the audience will be able to identify the most suitable feature extraction methods to be applied to a given task and will be aware of the importance of extracting richer visual information from the scene to obtain accurate results for the low level problems which allows the achievement of improved and robust solutions for the high level problems.

T6 - Transparency and Anti-Aliasing Techniques for Real-Time Rendering (handouts)

Marilena Maule (UFRGS), João Comba (UFRGS), Rafael Torchelsen (Universidade Federal da Fronteira Sul - UFFS), Rui Bastos (NVIDIA).

Abstract: Transparency and anti-aliasing effects are crucial to enhance the realism in computer-generated images. In common, both effects have the fact they rely on processing discrete samples from a given function, but using the samples for different purposes. For transparency computation, samples usually encode color information along a ray that crosses a scene, which are combined in order of intersection to produce the final color of a pixel. For anti-aliasing, samples usually represent different color contributions within the region of a pixel, and must be combined with the proper weights to produce the final color of a pixel. Graphics applications have a high demand for such effects. Transparency effects are largely used to render transparent objects in CAD models, and several other phenomena, such as hair, smoke, fire, rain, grass, etc. Anti-aliasing is an even more crucial effect, because jagged edges can be easily spotted and create disruptive distractions during a 3D walkthrough, and clearly are unacceptable in real-time applications. For algorithms that compute these effects, there are several factors that impact the quality and performance of the final result. For example, a simple transparency effect can be simulated using pre-computed textures, sorted in depth order. However, more complex transparent effects, which require a higher cost for processing transparency samples in depth ordering, are often too costly to be included in interactive 3D applications, like games. This scenario is changing with the improvement in performance of GPUs, but transparency effects still have to fight for the computational power with the other aspects of the application. Similarly, anti-aliasing (AA) techniques are directly impacted by the need to collect and process multiple samples. There is a vast number of proposals in the image processing literature that describes how to solve the problem, each with its own tradeoffs on quality and performance. Likewise, GPUs are often used to improve performance of AA algorithms, and some already have AA support in hardware. While good results with respect to quality and performance are obtained for static scenes, to maintain temporal coherence (coherence between frames) is still challenging, especially when relying only in the color information. In this tutorial we review state-of-the-art techniques for transparency and anti-aliasing effects. Their initial ideas and subsequent GPU accelerations are detailed, with a discussion on their strengths and limitations. We conclude with a discussion on applications and methods that can arise in the future.