Representation theory on the open Bruhat cell The action of a reductive algebraic group G on G/P − , where P − is a parabolic subgroup, differentiates to a representation of the Lie algebra g of G by vector fields on U + , the unipotent radical of a parabolic opposite to P − . We show that both the regular functions on U + and the polynomial vector fields on U + form g-modules that are dual to parabolically induced modules, construct an explicit composition chain of the former module in the case where G is classical simple and U + is Abelian, and indicate how this chain can be used to analyse the the latter module.

B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Visual task identification and characterization using polynomial models Developing robust and reliable control code for autonomous mobile robots is difficult, because the interaction between a physical robot and the environment is highly complex, subject to noise and variation, and therefore partly unpredictable. This means that to date it is not possible to predict robot behaviour based on theoretical models. Instead, current methods to develop robot control code still require a substantial trial-anderror component to the software design process. This paper proposes a method of dealing with these issues by (a) establishing task-achieving sensor-motor couplings through robot training, and (b) representing these couplings through transparent mathematical functions that can be used to form hypotheses and theoretical analyses of robot behaviour.We demonstrate the viability of this approach by teaching a mobile robot to track a moving football and subsequently modelling this task using the NARMAX system identification technique. The behaviour of a robot (for example the trajectory of a mobile robot) is influenced by three components: (i) the robot's hardware, (ii) the program it is executing and (iii) the environment it is operating in. Because this is a complex and often nonlinear system, in order to program a robot task to achieve a desired behaviour, one usually has to resort to empirical trial-and-error processes. Such iterative-refinement methods are costly, time-consuming and error prone [6] .. One of the aims of the RobotMODIC project at the universities of Essex and Sheffield is to establish a scientific, theory-based, design methodology for robot control program development. As a first step towards this aim we "identify" a robot's behaviour, using system identification techniques such as ARMAX (Auto-Regressive Moving Average models with eXogenous inputs) [4] and NARMAX (Nonlinear ARMAX) [3, 1] . These produce linear or nonlinear polynomial functions that model the relationship between user-defined input and output, both pertaining to the robot's behaviour. The representation of the task as a transparent, analysable model enables us to investigate the various factors that affect robot behaviour for the task at hand. For instance, we can identify input-output relationships such as the sensitivity of a robot's behaviour to particular sensors [10] , or make predictions of behaviour when a particular input is presented to the robot. This, we believe, is a step towards the development of a theory of robot-environment interaction that will enable a more focused and methodical design of robot controllers. We have shown how the NARMAX modelling approach can be used to identify a simple vision-based task. In our experiments, a linear model was sufficient, but our identification approach is not limited to linear models. Obtaining a task-achieving controller through system identification is very efficient despite using complex input from a vision sensor code was ready to run within a few hours.. The task investigated in this paper could have been achieved using other machine learning approaches, such as supervised artificial neural networks (MLP, RBF, LVQ, . . . ) or support vector machines. However, these approaches tend to be slow in learning, especially when using large input spaces and, more importantly, generate opaque models that are difficult to visualize and analyse.. In contrast, our modelling approach produces transparent mathematical functions that can be directly related to the task. This allows for predictions to be made about the behaviour of the robot executing the models without actually evaluating the output of the input space. In the example presented here the function of the two models obtained can be predicted by only looking at the parameters of the model equations. Furthermore, understanding the workings of the task by looking at the polynomial model allowed us to change the task in a predictable manner in order to achieve a different behaviour.. Another important advantage of the NARMAX modelling methodology is that it does not suffer from the "pitfall" of local minima in the calculation of the model parameters. Through a single optimal set of parameters we always obtain the estimation of the model. This increases the efficiency of the estimation process, by removing the need to use mechanisms such as "momentum" or "inertia" to avoid suboptimal solutions.. The RGB colour space is not reliable for colour discrimination applications in variable illumination intensity environments [8] . This has been demonstrated one more time with our experiments. The obtained RGB model was not good enough to make the robot home in on the ball when the ball appears to the extreme left or right of the robot's image. Using a less illumination-dependent colour encoding solved this problem. Apart from the models presented above, we have also obtained models with different lags (i.e. incorporating inputs presented to the system earlier than the current time n). Such lags in the model represent "memory", and our hypothesis was that the robot would keep turning in the "right" direction even if the ball would leave the camera's field of view.. We tested this hypothesis experimentally. Figs. 12 and 13 show two streams of images obtained during the testing of one such model with lag 8 (i.e. incorporating terms with inputs presented in the last 2 s). Below each image is the rotational velocity of the robot after the processing of the corresponding image. These results demonstrate that clearly this "memory effect" is detectable in certain situations. In fact, throughout the entire testing session (approximately 30 min) the robot showed a tendency to follow the ball after it had left the image (as the two examples of the tables show). However, statistical analysis of the entire test data did not produce conclusive evidence that the robot will always follow a disappearing ball correctly. We believe the reason for this lies in the fact that a linear model is not able to express relationships between different input channels or different time instants of one or more input channels. As an example, consider the ball rolling from the right to the left of the camera image. This will produce inputs, some of which will "encourage" right turning (negative ω) and some left turning (positive ω). The resulting rotational velocity will therefore be the sum of these contributions and its value will depend on the speed of the ball and the lag of the model. This may well result in the robot wrongly turning to the right if, for example, the ball appeared longer to the right during its path.. We therefore believe that in cases where task-specific information is contained in multiple input channels or multiple successive time-frames (such as the example above), a nonlinear NARMAX model would produce better results. This hypothesis is subject to ongoing research at the University of Essex.

O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Refinement criteria for high fidelity interactive walkthroughs Physically based global illumination rendering at interactive frame rates would enable users to navigate within complex virtual environments, such as archaeological models. These algorithms, however, are computationally too demanding to allow interactive navigation on current PCs. A technique based on image subsampling and spatiotemporal coherence among successive frames is exploited, while resorting to progressive refinement whenever there is available computing power. A physically based ray tracer (Radiance) is used to compute reflected radiance at the model's triangles vertices. Progressive refinement is achieved increasing the sampling frequency by subdividing certain triangles and requesting shading information for the resulting vertices. This paper proposes and evaluates different criteria for selecting which triangles to subdivide. A random criterium and two criteria based on Normalized Luminance Differences are evaluated: one operating on image space, the other on object space. Results, obtained with a model of an old roman town, show that the object space criterium is able to locate and represent visual discontinuities, such as shadows, and does so requiring less triangle subdivisions than the other two. Physically based global illumination rendering at interactive frame rates is a major challenge for the computer graphics research community but it is also a major requirement to allow walkthroughs within virtual environments, since it would enable users to navigate within such models while visualizing high quality images that can be used on a predictive manner. This capability is essential for many applications, such as architectural design, lighting engineering and virtual reconstruction of long disappeared archaeological sites.. The latter is the main motivation for the current work. Archeologists working with a model of the ancient roman town of Bracara Augusta often complain about the odd feeling they experience in these interactive tours: lack of realism due to local illumination models that do not take into account light interactions among objects. To take advantage of walkthrough facilities, archaeologists require correct illumination to study architectural building options and the urban development of the town. This includes to observe how the behaviour of the sun influences the size and shape of windows, the allocation of the inner space and streets' orientation; to understand the quantity of daylight in every house compartment, enhancing the perception of realism in the inner space of the building; to infer if a room needs artificial lighting (oil lamps) and simulate these artificial lighting conditions.. To provide accurate visualizations of the underlying virtual world, physically based global illumination models must be used to render the scenes. Global illumination algorithms, however, are computationally too demanding to allow interactive navigation on large virtual models using current PCs. Brute force rendering of each frame on a virtual walkthrough is impractical and ingenious techniques are required to support a smooth navigation while presenting tolerable degradation of the image quality. To support smooth virtual walkthroughs a technique based on parallel processing, asynchronous rendering and spatiotemporal coherence among successive frames is exploited, while resorting to progressive refinement to converge to high fidelity images whenever there is available computing power. It is structured as a three-tier architecture: a parallel high quality renderer (the physically based ray tracer Radiance [Ward and Shakespeare 1998; Ward 1994] ), a Shading Management Agent (SMA), which caches previously computed shading values, and a visualization client. Spatial coherence is exploited by accurately shading only at visible triangles vertices, thus spasely sampling the image plane, and interpolating among them when displaying the image [Santos et al. 2005; Tole et al. 2002; Walter et al. 1999; Walter et al. 2002] ; interpolation is performed by the visualization client, using the graphics hardware. Temporal coherence is exploited by reusing previously shaded points and reprojecting them according to the current view point (thus currently restricting the illumination models to Lambertian ones). By limiting the shading points (or samples) to the original geometry triangles' vertices, the resulting images are inaccurate wherever the shading frequency should be higher that the actual sampling frequency, such as at shadows boundaries. To overcome this limitation a hierarchical subdivision mesh is associated with each original triangle on the model; a new level is added to the hierarchy whenever a triangle is selected for subdivision -resulting on several children triangles -thus increasing the sampling frequency over that region. Image quality will progressively converge to a fully ray traced solution as the projected area of each subdivision triangle approaches one pixel. The policy used to select which triangles to subdivide at a given instant is referred to as the refinement criterium. This paper's main contribution is to propose and evaluate three different refinement criteria: a random one and two criteria based on Normalized Luminance Differences, one working on image-space and the other on object-space. These will be evaluated with respect to convergence rate, resources' consumption and empirical image quality. Bracara Augusta, currently Braga, Portugal, was one of the three major towns founded by Emperor Augustus in the Iberian Peninsula, at the end of the Cantabrian wars (around 16 BC). The archae-ological rescue project of Bracara Augusta started in 1976: some relevant buildings and infrastructures, regarding urban development and architecture, have been found, studied and interpreted. Based on these archaeological data and on their interpretation, a first challenge to virtually reconstruct Bracara Augusta resulted on a virtual model, which shows the urban development of the city with some accurate reconstructions of the Alto da Cividade thermae (the only public health-resort totally excavated in Braga), the insulae of the Carvalheiras (a wealthy private house), the defensive wall and the orthogonal streets. The virtual model of Bracara Augusta was created in 2000, using some available commercial tools. It has a complexity of about 1,140,000 faces. One of the main goals of Bracara Augusta's virtual model was to make an educational movie to promote archaeological research. A 20 minutes long movie was initially produced in 2000, each frame taking about 2.5 hours to render on a SGI Octane, single processor [Martins and Bernardes 2000] .. The next section contains an overview of the three-tier architecture and the framework used to support smooth high fidelity virtual walkthroughs. The following section presents related work. Section 4 discusses the refinement criteria proposed on this paper. To evaluate system performance and the quality of the rendered images, section 5 describes the experimental methodology and setup, while section 6 critically analyzes the obtained results. The conclusion section closes the paper. Three different refinement criteria, used to select which triangles to subdivide within a subsampling rendering approach, were analyzed: a random criterium (RND), an image space criterium (NLD IS) and an object space one (NLD OS). The last two are based on Normalized Luminance Differences (NLD). Results were obtained using a model of the old roman town of Bracara Augusta.. The analysis of these results showed that the object space criterium clearly identifies visual discontinuities, such as shadows, and adapts the triangle mesh to their boundaries. The other two approaches achieve only fuzzy visual results, while requiring more triangle subdivisions. NLD OS achieves better results faster than NLD IS, but is slower than random. This added execution time is, nevertheless, compensated by the increased quality of the resulting image; optimizing NLD OS is probably worth to reduce its overheads on the selection of triangles.. As future work we intend to merge NLD OS with a random pass. This may help finding discontinuities that are not found by exploring only regions with luminance differences. Tone mapping must still be improved to display perceptually more pleasant images.. Porting the visualizer to a mobile device and exploring wireless communication protocols is a major goal. The main R&D issues to tackle are support for specular phenomena, textured polygons and moving objects. The Render Cache system [Walter et al. 1999; Walter et al. 2002] pioneered the integration of asynchronous rendering, exploitation of spatiotemporal coherence and parallel processing. The renderer is decoupled from the visualizer; the latter requests shading values for specific 3D points (shading samples) and builds an image by interpolating over whatever shading data there is at each moment. Thus the image plane is subsampled, exploiting spatial coherence. Shading samples are cached on image space and reprojected whenever the view point changes, thus exploiting temporal coherence. Progressive refinement is achieved by requesting further shading samples to the renderer, whenever there is computing power surplus. Reprojection of image space cached samples results in geometric errors. To avoid this problem the Shading Cache [Tole et al. 2002] uses a similar approach but shading samples are cached as a cloud of points in object space, thus eliminating the need for image space reprojection and associated errors. The system used for the current work is based on the Shading Cache architecture.. The refinement criterium guides the process convergence by selecting which geometric primitives should be further subdivided. More shading samples will be requested, increasing the sampling frequency on those locations. The Render Cache builds a refinement priority map based on the age of the sample that maps onto a pixel -age being defined as the number of frames elapsed since that sample was computed. For interpolated pixels -those where no sample maps directly -priority is computed as the inverse of number of neighbouring pixels that have samples mapped to them. Higher priority is given to older samples and to image space regions that have less shading samples. An error diffusion dithering algorithm is then applied to the priority map to obtain a good spatial distribution. If the view point is changing from frame to frame, then further samples are requested by predicting several frames ahead where regions without data are likely to become visible. This is an image space based refinement criterium that doesn't use any information from the shading values themselves and that can be a good indicator of whether or not there is a feature of interest (such as a shadow) on an image region. The Shading Cache uses a mixed object space and image space refinement criterium. Each pixel on the image is assigned a priority based on its predicted interpolation error value. This is computed as the luminance difference between the maximum and minimum luminances of the vertices of the triangle that maps onto each pixel. The priority map is then normalized, a pixel is randomly selected and an additional random number is generated. If the pixel normalized priority is larger than this random number, then the triangle that projects onto that pixel is selected for subdivision. The probability of a triangle being selected for refinement is proportional both to its predicted interpolation error and to the number of pixels it projects to. Triangles projecting on small areas are very unlikely to be selected for subdivision by this random process. However, since the refinement scheme is trying to direct samples into regions of high gradients, such regions inevitably contain a large number of small triangles. In order to improve the rate of convergence in these cases, a second image plane selection phase is applied that tests the neighboring locations of the already selected high priority samples and accepts them if their priority is greater than the current sample. This can be seen as a neighbourhood propagation strategy. Kavita et al. [Bala et al. 2003; Velázquez-Armendáriz et al. 2006 ] propose a technique to improve both interpolation and refinement based on edge and point images. Edges, corresponding to geometric discontinuities or shadow boundaries, are located on the image plane at subpixel precision by applying image processing operators. This information is used to interpolate between samples using an edge-respecting invariant and to direct the refinement process to regions containing such discontinuities. This technique requires complex image processing operators.. The Holodeck system [Ward and Simmons 1999] caches data on ray space in order to enable interactive walkthroughs on models rendered using the Radiance system. Although it supports some kinds of view-dependent phenomena, such as glossy reflections, it does not support object motion. Approaches based on the Shad-ing Cache support dynamic geometry by refreshing samples that become invalid [Tole et al. 2002] . Since our goal is to assess refinement criteria, all experiments consist on fixed view point measurements, rather than navigation within the model. We will empirically assess the quality of the obtained images with respect to the quality of visual discontinuities found by the refinement process, specifically the quality of shadows. We also report the time, in seconds, required to obtain these images, T , as well as the total number of triangles being displayed, ∆ img , and the total number of triangles that had to be sent to the visualizer to reach that state, ∆ total -these include triangles that were subdivided and thus deleted at some time, but reflects the number of triangles that had to be rendered and communicated through the network. Results are presented for three view points, corresponding to images where shadows are important and have peculiar shapes: a view of the city wall (CW) where the number of triangles belonging to the view frustrum is large, a view of a street (ST) where columns and the buildings' roofs cast shadows on the floor and a view of a temple (TP) where a column casts a large shadow that is not captured without the refinement process.. Images and metrics are taken at two different stages of the progressive refinement process: stage 1 corresponds to the instant where all initial visible geometry has been shaded and triangle subdivision is just starting, stage 2 is the final image obtained when the refinement process terminates. Metrics corresponding to each stage are superscripted with the stage number; ∆ 1 total , for example, corresponds to the total number of triangles sent to the visualizer up to stage 2.. The working environment uses two machines, interconnected through 100 Mbits/s Ethernet:. • the visualization client is a PC with an AMD Athlon CPU and a NVidia GeForce 5200 GPU;. • the SMA and the renderer run on the same machine, a dualXeon 3.2 GHz processor, with 2 GB RAM and a NVidia 6800GT GPU.. For results concerning interactive navigation and parallel rendering with Radiance using this framework (without triangle subdivision) refer to [Santos et al. 2005 ].

B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Modeling Aventurescent Gems with Procedural Textures : Examples of gemstones that exhibit aventurescence, and that have been rendered using the methods described in this paper. The beads on the necklace that is draped on the drinking glass in the leftmost image are examples of Sunstone, a genuine mineral that is sought after for its ephemeral, amber-like appearance with glittering inclusions. The middle image is a close-up of several beads, while the picture on the right shows a silver ring with a gem made from black aventurescent glass.In this paper we present the results of an investigation on how one can model aventurescence, an interesting and optically appealing property of some gemstones. Our goal was to find a method that is both efficient and reasonably realistic, and that can still be used in the context of a global illumination rendering system. Crystals and minerals can exhibit a large and diverse number of interesting optical properties. One particular feature is that of aventurescence, which is a glittering effect caused by small, highly reflective crystalline metallic inclusions of up to 1mm in size embedded in a parent mineral.. These inclusions, which we will refer to as particles in this paper, are commonly copper, Hematite or Mica. The faces of these tiny crystals (for which we use the name particle facets) act as tiny mirrors, so that the otherwise transparent or translucent gemstone sparkles and glitters when turned around. The overall effect is not unlike that of certain types of metallic paint, albeit one with comparatively few -and, by the standards of metallic paint, rather large -metallic flakes embedded in it.. The effect is found in a number of chemically and crystallographically diverse minerals, such as Sunstone, Aventurine Quartz or Goldstone. Due to the visually appealing nature of the effect, minerals with this property are sought after as decorative objects and gemstones.. Especially for large and comparatively valuable raw gemstones like e.g. Sunstone, the cutting and polishing that leads to a finished gem requires careful consideration. A proper cut can greatly increase the value of a stone, and one only gets one attempt at getting this right. Therefore computer-aided prototyping of gemstone cuts -which is something normally associated with "classical" gemstones such as diamond or sapphire -might be potentially a desirable feature even for minerals which exhibit aventurescence.. The aim of this paper is to enhance computer graphics knowledge in the area of gemstone rendering by reporting on our practical experiences in reproducing this particular appearance attribute. We use Aventurine glass, a synthetic substance which exhibits the effect very clearly, to demonstrate our technique, but as discussed in section 5 the method we propose can be adapted to represent a variety of different genuine minerals. We presented our experiences with physically-oriented, efficient modelling of aventurescence, a very visually appealing property of several types of semi-precious gemstones. Due to its nature, the effect requires careful analysis before an efficient model representation can be found. The solution we used is very probably also applicable to other, similar appearance attributes of gemstones and man-made objects. While gemstone rendering is not a large research area within graphics, it has over the years yielded a number of publications about various effects that are peculiar to crystals and precious stones.. Dispersion was first examined by [Thomas 1986 ] and later by [Yuan et al. 1988] . Further investigation was done by [Sun et al. 2000] , who also investigated absorption in homogeneous transparent materials [Sun et al. 1999] . Polarisation was examined by [Wolff and Kurlander 1990] , later by [Tannenbaum et al. 1994] and [Wilkie et al. 2001] . Recently [Guy and Soler 2004] found a way to render gemstones in realtime.. To the best of our knowledge, nobody so far has investigated aventurescence in gemstones. The closest work to ours is [Ďurikovič 2002;Ďurikovič et al. 2002] , but unlike to our work, this approach explicitly modeled the particles with a triangular mesh. [Ershov et al. 1999; Ershov et al. 2001 ] introduced a surface model for pearlescent paint that includes sparkling effects based on a statistical approach for static scenes.. Based on these models [Ershov et al. 2004] later showed how to reverse engineer the appearance of real paint by appropriate mapping of the surface parameters of their paint model.

O O O O B I O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Multiresolution plant models with complex organs Interactive visualization of virtual trees and forests is an important challenge in computer graphics and virtual reality. Complex geometric representation of virtual vegetation often overwhelms computer processing units and graphic hardware resources. We present here a new cluster based polygon decimation method, Hierarchical Union of Organs, to progressively and hierarchically simplify complex plant organs (foliage, flower, fruits). Using this method, we propose a novel approach to construct multiresolution organ geometrical models under spatial error control. During rendering, the approach generates minimal graphical primitives. The implementation shows its efficiency for geometrical compression on single trees. It also illustrates its fast rendering capabilities on scenes composed of numerous tree and plant species, including broadleaf and coniferous species. Social pressure on sustainable development has recently stimulated new multidisciplinary researches. Our concerns, which focus on modeling, simulation and visualization of the forest landscape, lie clearly within this frame work. With the development of novel techniques in plant modeling and simulation, many new plant modeling softwares have been produced. Thousands of plant species with fine geometric details can now be simulated. Fast visualization becomes more and more important as an assistant interface for agro-forestry management, virtual environment, ecosystem design, flight simulation, and digital recreation. Interactive and realistic visualization of plant communities has thus a challenging problem in computer graphics [Decaudin and Neyret 2004] . Trees and plants are complex objects in terms of shape, color and illumination, with many details of small, sparse and non-manifold geometry. The difficulties arise from the fact that the geometric shapes included in virtual natural scenes lead to a heavy burden of graphical primitives to handle.. Key points we want to address here are the rendering speed and memory costs of plant and tree organs (foliage, flower, fruits). Dedicated multiresolution methods were developed in recent years [Re- * e-mail:xpzhang@nlpr.ia.ac.cn † e-mail:frederic.blaise@cirad.fr ‡ e-mail:jaeger@liama.ia.ac.cn molar et al. 2002] , but had strong restrictions, such as leaf representation limited to a single quadrilateral and high pre-processing cost [Zhang and Blaise 2003] . In this paper we extend such approaches of foliage simplification to complex organ shapes, reducing pre-processing costs, and we apply the proposed approach to fast visualization of heterogeneous plant scenes. Successful plant modeling systems have been developed in recent years, many of which are widely used.. AMAP models [de Reffye et al. 1988] , include the botanical knowledge of plant architecture and real measured data, reflecting the plant's growing mechanism, including its spatial occupation, and the position of leaves, flowers or fruits. [Prusinkiewicz and Lindenmayer 1990 ] L-system is developed to describe the growth process of living organisms based on fractal patterns. L-system grammars are currently popular methods describing branching patterns and plant-growing processes. Xfrog [Lintermann and Deussen 1999] is a combination of a rule-based approach with traditional geometric modeling techniques. Plant models simulated in L-system and AMAP are representive of to real plants. Specific user guided LOD capabilities exist in those approaches, but none support automated and continuous multi-resolution models.. Polygon models are popular representations used for plant geometry. Some approaches have been developed to convert polygon models to other graphic primitives such as points and lines, impostors, and volumetric textures or volume spaces. Point and line models are efficient for rendering small polygons [Deussen et al. 2002] since the number of world-to-screen project transformations can be reduced. Impostors are used to convert complex geometries to simple ones with texture mapping. It is thus efficient for rendering repetitive objects in a scene [Shade et al. 1996] . Volumetric texture and volume methods are efficient for interactive realistic image synthesis of repetitive geometry [Decaudin and Neyret 2004] . However major drawbacks do arise from these techniques in particular, close view are not possible and geometrical information can become lost.. Several methods have been proposed in the past to address polygon decimation, most of which are multiresolution modeling. We cite here only plant related works, since generic approaches based on object surface continuity fail. The Foliage Simplification Algorithm (FSA) [Remolar et al. 2002] aims at diminishing the number of leaf polygons in the crown, whilst maintaining their appearance, introducing the idea of leaf collapse. The new leaves obtained after collapsing preserve an area similar to the original ones. Progressive Leaves Union (PLU) [Zhang and Blaise 2003 ] is a modified FSA to keep more reasonable spatial occupation and color distribution of the foliage with measurements of similarities. A common drawback of FSA and PLU is that only quadrilateral leaves are processed. More complex leaves, flowers, and fruits cannot yet be modeled.. In this paper, we present an upgrade and modification of FSA and PLU. Section 3 shows how these concepts are used to define hierarchical union of organs. Section 4 is dedicated to error controlled multiresolution plant geometry, while section 5 illustrates results.

B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O


Scheduling-independent threads and exceptions in SHIM Concurrent programming languages should be a good fit for embedded systems because they match the intrinsic parallelism of their architectures and environments. Unfortunately, typical concurrent programming formalisms are prone to races and nondeterminism, despite the presence of mechanisms such as monitors.In this paper, we propose SHIM, the core of a deterministic concurrent language, meaning the behavior of a program is independent of the scheduling of concurrent operations. SHIM does not sacrifice power or flexibility to achieve this determinism. It supports both synchronous and asynchronous paradigms-loosely and tightly synchronized threads-the dynamic creation of threads and shared variables, recursive procedures, and exceptions.We illustrate our programming model with examples including breadth-first-search algorithms and pipelines. By construction, they are race-free. We provide the formal semantics of SHIM and a preliminary implementation. Embedded systems differ from traditional computer systems in their need for concurrent descriptions to handle simultaneous activity in their environment or to exploit parallel, often heterogeneous * Edwards and his group are supported by the NSF, Intel, Altera, the SRC, and NYSTAR.. Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. hardware. While programming such systems in traditional sequential languages would be convenient, it greatly hinders exploiting parallelism. Instead, we propose a concurrent language whose constructs simply avoid many pitfalls of parallel programming.. We say the behavior of a system is deterministic if and only if it depends exclusively on external decisions, i.e., on well-defined inputs of the system (which may include a clock), rather than internal decisions of the compiler, optimizer, runtime scheduler, debugger, etc. The motivation for our work rests on two central assumptions. Most programs (including concurrent programs) are meant to behave deterministically. However, most programming languages (including Java and C) do not guarantee determinism but instead provide constructs designed to help achieve it.. C's nondeterminism lurks in subtle places, such as function argument evaluation order, and in "undefined behavior," such as reading uninitialized memory. Most programmers are careful enough to avoid calling functions with side-effects when passing parameters, but the undefined behavior of C produces a whole host of problems including buffer overflows, which is probably the leading cause of computer insecurity today. Languages such as Cyclone [24] and the CCured rewriter [27] have been developed to attack exactly these sources of nondeterminism in the language.. The design of Java successfully avoids most of the obviously nondeterministic aspects of C by adding array bounds checking, fixing expression evaluation order, etc., but its concurrency introduces a whole host of potential sources of nondeterminism, leading to concurrency-related bugs such as data races and the like. It is these concurrency-induced sources of nondeterminism that we are primarily concerned with avoiding.. In this work, we propose SHIM, a deterministic concurrent programming language. A program written in SHIM is guaranteed to behave the same regardless of the scheduling of concurrent operations. While the restrictions SHIM imposes do make it impossible to implement certain algorithms that appear nondeterministic but are actually well-behaved, we believe SHIM is both expressive and amenable to efficient implementation. We argue for SHIM's expressivity in a series of examples and describe a preliminary compiler able to generate single-threaded C code. We have presented SHIM, a practical imperative language that provides Kahn-like deterministic concurrency. In addition to arithmetic expressions and classical control-flow constructs, we provide recursive procedure calls, synchronized shared variables, and exceptions, all in a concurrent setting. We proposed a core syntax, defined the semantics of this language, and described an unoptimized implementation of our language as a translation to C.. The syntax we propose, while rich enough to express interesting programs, is just a skeleton on which we are building a complete language. In particular, we shall address the lack of data structures in SHIM. Because pointers may introduce inter-thread aliasing and the potential for races, adding them is not straightforward. We plan to use a mix of user-specified annotations and inference; aliasing analysis and ownership types [14] will be the basic building blocks.. Making our language practical will also require a proper module or package system for encapsulating libraries. By nature, however, the design of this aspect of the language is largely orthogonal to the semantics we have presented here. We expect a system from another successful language can be employed with few problems.. From a more theoretical viewpoint, we would like to formalize and prove that our language is deterministic. Our adherence the Kahn principle in the design of our language strongly suggests this should be true and possible to prove.. Boundedness was a goal of the original SHIM language [15] that the language in this paper does not guarantee since it permits unbounded recursion. While this is very convenient for certain software systems, it makes a hardware implementation difficult. To ensure the decidability of type-checking, proof assistants such as Coq [31] require functions be provably terminating, total, and deterministic. We plan a mechanism for hardware implementation of SHIM that will involve similar constraints and techniques.. In short, we believe we have a solid, powerful foundation for expressing concurrent algorithms for both software and hardware. However, much remains to be done. We discuss how SHIM relates to work on data races in concurrent systems, then compare it to other concurrent languages.

O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Joint Reconstruction of Image and Motion in Gated Positron Emission Tomography Abstract-We present a novel intrinsic method for joint reconstruction of both image and motion in positron emission tomography (PET). Intrinsic motion compensation methods exclusively work on the measured data, without any external motion measurements. Most of these methods separate image from motion estimation: They use deformable image registration/optical flow techniques in order to estimate the motion from individually reconstructed gates. Then, the image is estimated based on this motion information. With these methods, a main problem lies in the motion estimation step, which is based on the noisy gated frames. The more noise is present, the more inaccurate the image registration becomes. As we show both visually and quantitatively, joint reconstruction using a simple deformation field motion model can compete with state-of-the-art image registration methods which use robust multilevel B-spline motion models. W ITH a physical resolution of less than 5 mm of modern positron emission tomography (PET) scanners, even small patient motion can significantly reduce the image quality and thus lead to image distortion or even false diagnosis. For example, in the case of cardiac studies, the reconstructed image is affected by both cardiac and respiratory motion. Coronary arteries have been shown to move 8-23 mm during the cardiac cycle [1] and heart movement during free breathing is reported to be around 4.9 and 9 mm [2] - [4] .. In cardiac PET a typical way to deal with motion is to use both cardiac and respiratory gating (see e.g., [5] ): each cardiac Reconstruction of one gate with a standard ML-EM algorithm. The image intensities are scaled by a factor of 24 in order to be comparable. (b) Reconstruction of the same gate with our proposed joint reconstruction method. The image is smoother and provides more details since all counts are used for reconstruction.. and respiratory cycle is subdivided into a predefined number of frames (usually four to eight). Corresponding frames of different cycles define a gate. Due to the periodicity of the movements, the heart is supposed to be situated in the same position for the same cardiac and respiratory phase. Accordingly, each gate is assumed to contain motion free data. A severe disadvantage of reconstructing individual gates is the reduced statistical information. If, for example, 24 gates are used, the number of available counts for each gate is approximately only one divided by 24 of the total number of available counts. Accordingly, the images corresponding to the gates suffer from much more noise than the nongated reconstruction which is reconstructed based on the whole data. Fig. 1(a) shows one reconstructed gate.. Most current motion compensation methods consist of two independent steps: 1) motion estimation and 2) image estimation.. A popular way to estimate respiratory and/or cardiac motion is to 1) reconstruct each gate by a state-of-the-art PET reconstruction method (such as maximum-likelihood expectation-maximization, ML-EM, [6] ), and 2) register each frame to a reference frame. For gated PET, this has been done with affine motion models [7] , deformable optical flow models [8] - [11] , or based on a previously established patient specific motion model [12] . Alternatively, gated CT images which correspond to the PET gates can be used for motion estimation [13] , [14] .. In the second step, the image is estimated based on the previously found motion. A very common approach is to deform reconstructed gates to the reference frame and then combine them (usually by taking the sum of these deformed frames) [7] - [10] . Instead, an adapted ML-EM algorithm which is able to deal with arbitrary nonrigid motion can be used [12] - [14] .. There are some problems related to the motion estimation step. If it relies on individually reconstructed gates, the statistical properties of the gates are crucial. On the one hand, one wants to have as many gates as possible in order to accurately measure the motion. On the other hand, using more gates implies less photon counts in each gate and thus leads to noisier reconstructed images on which the motion estimation is based. So, with an increasing number of gates, the motion estimation step is less accurate or even fails completely. These statistical problems can be circumvented by using gated CT scans for motion estimation instead of individually reconstructed gates. However, this comes at the price of exposing the patient to several CT scans (depending on the number of gates) and a potential misalignment between the PET and CT gates.. Beyond the described methods which separate motion estimation from image estimation, there is another class of algorithms that jointly estimate image and motion. These methods work only on the acquired PET data and are based on a unified imaging model which explicitly includes the physical effects induced by motion. They can be broadly subclassified into two categories: those that use a different image estimate for each frame [15] - [20] , and those that use a common image estimate for all frames [21] - [24] .. Those that use a different image estimate for each frame model the image as a function of time. The motion function is not explicitly part of this model. The result of such methods is a 4-D (3-D ) reconstruction of the tracer distribution.. The methods that use a common image estimate for each frame are also able to reconstruct a 4-D tracer distribution, but, additionally deliver the corresponding motion function which could be useful for further studies. All of the cited papers on a common image estimate work with a rigid motion model.. In this work, we present a novel method for joint reconstruction (JR) of image and motion. Our method is based on a motion-aware likelihood function and a smoothing term which regularizes the motion field in the space domain. The motion field is a 4-D deformation vector field which contains the deformation vector of each voxel at a specific point of time. We use a common image estimate and-in contrast to most current methods-a deformable motion model. Our objective function is very similar to the one used in [21] , however, our optimization scheme is different. In contrast to [21] , we observe a clear advantage for joint reconstruction methods with respect to reconstruction quality.. Since our method delivers both image and motion, it is possible to visualize the motion instances for every gate. Compared to a simple gated approach without motion compensation, our method delivers a smoother image, since for every gate all available counts of the whole acquisition are used [see Fig. 1(b) ]. We present a novel reconstruction algorithm for gated positron emission tomography which jointly reconstructs both image and motion. No external motion information is needed, gating is achieved by a novel image based procedure. In a simulation study, both quantitative and visual comparison show that our method can compete with state-of-the-art registration algorithms for all simulated count conditions and particularly in low counts scenarios. We show the feasibility of the method with patient data, indicating the potential of the presented approach for reducing motion blur. Further validation on patient data should help determine the impact of the improvement achieved in the diagnostic accuracy of positron emission tomography. The results for patient data can be expected to improve by including physical degradation effects like attenuation, scattering and randoms in the system model. . We rewrite (57) as

O B O O O O O O O O O O O O O O O O O B O O O O O O B I I I O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O B O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O B O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O


Sampling, Information Extraction and Summarisation of Hidden Web Databases Hidden Web databases maintain a collection of specialised documents, which are dynamically generated in response to users' queries. The majority of these documents are generated through Web page templates, which contain information that is often irrelevant to queries. In this paper, we present a system designed to detect and extract query-related information from documents sampled from databases. The proposed system, 2PS, is based on a two-phase framework for the sampling, extraction and summarisation of Hidden Web documents. In the first phase, 2PS queries databases with random terms selected from those contained in their search interface pages and the subsequently retrieved documents -this phase retrieves a pre-determined number of sampled documents. In the second phase, it detects Web page templates from the sampled documents in order to extract information relevant to respective queries from which a content summary is generated. 2PS is validated through the implmementation of a prototype system. Its evaluation is performed through experiments on a number of real-world Hidden Web databases.The experimental results demonstrate that 2PS effectively eliminates irrelevant information contained in Web page templates and generates terms and frequencies with improved accuracy. Conventional and general-purpose search engines (e.g., Yahoo and Google) continuously expand their indexing capacity in order to accommodate the growth of Web pages. Search engines employ Web crawlers (a.k.a. spiders, robots) to index static Web pages through hyperlinks. However, these crawlers are unable to index a large amount of publicly accessible information, which includes dynamically generated Web pages through scripts or queries, multimedia objects and non-HTML files. Collectively, such information has become the largest growing category of information on the Internet and is referred to as 'Hidden Web' [8] , 'Invisible Web' [23] or 'Deep Web' [3] .. In this paper, we focus on databases that dynamically generate documents through queries. The examples of such documents are archives, user manuals and news articles, which possess the following distinguishing characteristics.. • Hidden Web documents are only accessible through the search interfaces of underlying databases.. • Knowledge about the contents of documents maintained in databases is often unavailable.. • Hidden Web documents are dynamically generated through one or more Web page templates.. The above characteristics of Hidden Web document databases raise a number of issues. For instance, with the proliferation of databases, it has become prohibitive for specialised search services (e.g., search.com) and subject directories (e.g., Open Directory Project) [16] to manually evaluate databases in order to assist users in their searches.. Current approaches [5, 8, 14, 15, 25] employ the techniques of database selection or categorisation to facilitate information search of databases. The former selects databases that contain information relevant to a user's query. Database categorisation automatically assigns databases into subject categories in order to assist users in browsing or searching for information. These techniques typically require knowledge about the contents of databases. In the domain of the Hidden Web, knowledge about the contents of databases is unavailable. Thus, a common approach to acquiring such knowledge is through the generation of statistics (i.e., terms and frequencies) from documents stored in databases. As it is not practical to retrieve all documents of a database to generate such statistical information, a number of research studies [5, 14, 15, 25] obtain a number of documents from the underlying database through sampling. A major issue associated with these techniques is that they also extract irrelevant information.. Such information is often found in Web page templates, which contain navigation panels, search interfaces and advertisements. Consequently, the accuracy of terms and frequencies generated is reduced.. Given that current sampling process generates statistics without excluding irrelevant information, a mechanism to extract relevant information from sampled documents is necessary.. We review several techniques [1, 6, 12, 13, 17, 18] that access or extract information from dynamic Web pages. In particular, the techniques in [1, 6, 17] perform well in the extraction of data from dynamic pages when a search interface contains a set of clearly labelled fields. For instance, a bookstore Web site enables users to query its database about authors and titles of publications. Information related to a given author and publication title can be identified from the dynamically generated Web pages. However, it is more difficult to identify relevant information from result pages, when little or no information is available from keyword-only search interfaces. The research in [19, 20] analyses dynamically generated Web pages, but it does not further determine whether information contained in the pages is relevant to queries.. The review of sampling and information extraction techniques identifies their limitations and associated problems. This provides the motivation for our research in addressing the aforementioned issues. The focus of this research is placed on the generation of statistics (i.e., terms and frequencies) about a database with improved accuracy, in particular, the problem associated with the extraction of relevant information from documents through random sampling. For instance, when a document database is queried with a randomly selected term, dynamically generated documents often contain irrelevant information. Such information is typically used to assist users in navigation or to describe the document contents. The extraction of such information results in the generation of terms and frequencies with reduced accuracy.. Therefore, this paper proposes a system, Two-Phase Sampling (2PS), which aims to extract relevant information from dynamic documents through which statistics with improved accuracy can be generated. 2PS is based on a two-phase framework for the sampling, extraction and summarisation of Hidden Web databases and is validated through the implementation of a prototype system. The evaluation is performed through experiments, which are conducted on a number of real-world Hidden Web databases. These databases contain computer manuals, healthcare archives and news articles. Our technique is assessed in terms of: (i) effectiveness in detecting Web page templates from sampled documents (ii) relevancy of information (extracted from the documents) to respective queries and (iii) the accuracy of terms and frequencies that are generated from sampled documents.. Experimental results demonstrate that 2PS effectively detects a large number of Web page templates from the sampled documents. We also found that our technique provides an effective mechanism to detect dynamically generated Web pages that do not contain query results, such as error and exception pages. Moreover, 2PS effectively identifies and eliminates information contained in Web page templates from sampled documents. Therefore, terms that are relevant to queries have attained high frequencies when top 20 terms are examined. When compared with query-based sampling, the results also show that 2PS generates statistics with improved accuracy, particularly in terms of precision.. The contributions of the proposed approach are summarised as follows.. • 2PS effectively detects information contained in Web page templates from sampled documents. The detection of such information enhances the effectiveness of extracting relevant information, as templates contain irrelevant terms for navigation or descriptive purposes. This approach differs from sampling techniques currently employed, which do not further analyse the contents of sampled documents to extract relevant information only.. • 2PS extracts terms that are relevant to queries from documents and generates statistics (i.e., terms and frequencies) with improved accuracy. This is opposed to the techniques employed in [5, 14, 25] , which extract all terms from sampled documents, including those contained in Web page templates. Consequently, information that is irrelevant to queries is also extracted.. The remainder of the paper is organised as follows. Section 2 introduces current approaches to the discovery of information contents in Hidden Web databases. Related work on information extraction from dynamically generated Web pages is also discussed. Section 3 describes the proposed 2PS technique. Section 4 presents the evaluation of the proposed approach and reports on the experimental results. Section 5 concludes the paper. This paper presents a two-phase framework, 2PS, for the sampling, extraction, and summarisation of information from Hidden Web databases. 2PS extracts information relevant to queries from sampled documents and therefore generates statistics (i.e., terms and frequencies) with improved accuracy.. We conduct a number of experiments on three real-world databases to determine the effectiveness of 2PS in the detection of Web page templates employed by databases to generate dynamic documents. The performance for the extraction of query-related information is also. assessed. Experimental results demonstrate that our technique effectively identifies a large number of Web page templates from sampled documents. The detection of templates facilitates the elimination of information contained in templates. The results show that 2PS generates terms and frequencies of a higher degree of relevancy in terms of precision, when compared with query-based sampling.. We obtain promising results by applying 2PS in experiments on three real-world document databases. Future work will include experiments on a larger number of Hidden Web databases to further assess the effectiveness of the proposed technique. This section reviews current research and addresses a number of associated issues. A major area of current research into Hidden Web databases focuses on the automatic discovery of their information contents, in order to facilitate the process of database selection or categorisation.. For instance, the technique proposed in [9] analyses the hyperlink structures of databases to determine their similarity in content. That is, databases with similar contents are discovered through Web pages that are linked to databases. This approach considers that all information contained in Web pages that are linked to a database is relevant to its content, but in practice Web pages may contain information irrelevant to database content.. An alternative solution is to examine the actual content of an underlying database by retrieving its documents. A problem associated with this approach is that it is difficult to obtain all documents from a database, particularly in the domain of Hidden Web. Thus, a number of techniques [5, 14, 25] retrieve the required number of documents through sampling. For instance, query-based sampling [5] generates terms and frequencies from sampled documents.. This technique is applied in database selection where databases relevant to a user's query can be selected based on their terms and frequencies. The work conducted in [14, 25] sample databases with terms extracted from Web logs to obtain additional topic terms and frequencies. These terms and frequencies are also referred to as Language Models [5] , Textual Models [14, 25] or Centroids [15] .. A major issue regarding the aforementioned sampling techniques is that they extract information that is not relevant to queries. Irrelevant information (e.g., navigation or descriptive contents) is often found in Web page templates. For example, a language model generated from the sampled documents of the Combined Health Information Database (CHID) contains terms such as 'author' and 'format' with high frequencies. These terms are not relevant to queries but are used for descriptive purposes. Consequently, the accuracy of terms and frequencies generated from the documents has been reduced. The use of additional stop-word lists has been considered in [5] to eliminate irrelevant terms -but the study maintains that such a technique can be difficult to apply in practice.. Existing techniques in information extraction from Web pages are of varying degrees of complexity. A simple text-based analysis of Web pages is performed in [18] , which applies approximate string matching techniques to extract texts that are different. This approach is limited to finding textual similarities and differences.. Several techniques have also been developed to address issues associated with the access or extraction of information contained in Hidden Web databases. For instance, the research in [12, 13] focuses on the submission of query forms in preparation for data extraction from dynamic Web pages. The techniques applied in [1, 6, 17] work well in the extraction of information from Web pages dynamically generated in response to the query entered in the fields of a search form. For example, a library database typically requires users to enter the name of an author and title of a publication. Information associated with these fields can then be identified from dynamic Web pages. However, in instances of keyword-only search interfaces where little or no additional information is given, it may be difficult to determine which information from dynamic Web pages is related to respective queries.. The approach proposed in [19, 20] analyses textual contents and tag structures in order to extract data from Web pages. However, it requires Web pages with well-conformed HTML tagtrees. Computation is also required to convert and analyse Web pages in a tree-like structure.. Moreover, this approach identifies Web page templates based on a number of pre-defined templates, such as exception page templates and result page templates.. A number of studies [4, 7, 24] divide the contents of Web pages into blocks from which informative contents are identified. The approach in [24] assigns importance values to blocks in a Web page. However, when applying such an approach in the generation of statistics from the relevant contents of pages, the degree of importance with which blocks contain informative contents has yet to be determined. Similarly, [4] adopts a block-based approach to the analysis of Web page contents, which determines the rankings of Web pages to facilitate information search. A mechanism is also required in order to apply this technique in the extraction of relevant contents from pages. Moreover, blocks that are considered to be informative by [7] may also contain irrelevant contents. For instance, a block of text found in a CHID sampled document contains information relevant to healthcare. However, irrelevant terms such as 'author' and 'abstract' are also found in the text.. In terms of template detection, the algorithms proposed by [2] require that pages, links, and pagelets from a given collection of documents are stored as local database tables. This incurs extra processing time and storage.. In this paper, we focus on databases with a keyword-only search interface, which dynamically generate documents (e.g., archives and news articles). A distinct characteristic of documents found in such a domain is that the content of a document is often accompanied by other information for descriptive or navigation purposes. The proposed 2PS technique detects and eliminates template related information from sampled documents in order to identify queryrelated information. This differs from the approach in [6, 17] , which extracts a set of data from dynamic Web pages in relation to query fields given in the search interface. Our technique also differs from [1] since we further determine the relevancy of information from sampled documents and eliminate information that is dynamically generated but irrelevant to queries.. In addition, we analyse Web documents based on textual contents and associated neighbouring tag structures rather than analysing their contents in a tree-like structure (e.g., Document Object Model (DOM)). A preliminary experiment conducted in [10] found that the proposed TNATS approach is faster when compared with the approach based on tree-like structures. Our approach requires less computation to analyse dynamic Web page contents whilst the accuracy in extracting relevant information (in terms of recall and precision) has been maintained or improved. We also detect information contained in different templates through which documents are generated. Therefore, it is not restricted to a pre-defined set of page templates. Experiments are carried out on three real-world Hidden Web document databases, including Help Site, CHID and Wired News, which provide information about user manuals, healthcare archives and news articles, respectively. Table 1 summarises these databases in terms of their subjects, contents and the templates employed. Experiments are conducted on the set of Hidden Web document databases from which results are generated and compared for both 2PS and QS. We obtain the sampled documents for QS by submitting the first query to a database with a frequently used term. Subsequent query terms are randomly selected from those contained in the sampled documents. QS extracts terms (including terms contained in Web page templates) and updates the frequencies after each document is sampled. By contrast, 2PS initiates the sampling process with a term contained in the search interface pages of a database. 2PS also analyses sampled documents in the second phase in order to extract query-related information, from which terms and frequencies are then generated.. The experimental results in [5] conclude that QS obtains approximately 80% of terms from a database, when top 4 documents are retrieved for each query and 300 documents are sampled.. These two parameters are therefore used in our experiments for QS and 2PS. We obtain five sets of samples for each database, from which four documents are sampled for each query and a total of 300 documents are retrieved. Terms and frequencies are generated from the documents sampled.. We manually process documents sampled from each database in order to observe the number of A single measure, the F1 measure [21] , is also computed in order to compare the overall results of the algorithms. This measures a combination of precision and recall and is defined as follows. F1 = (2 * recall * precision) / (recall + precision)

O B I O O O B I I B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O B I I O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O O