James F. Blinn
Microsoft
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by James F. Blinn.
international conference on computer graphics and interactive techniques | 1996
Alvy Ray Smith; James F. Blinn
A classical problem of imaging—the matting problem—is separation of a non-rectangular foreground image from a (usually) rectangular background image—for example, in a film frame, extraction of an actor from a background scene to allow substitution of a different background. Of the several attacks on this difficult and persistent problem, we discuss here only the special case of separating a desired foreground image from a background of a constant, or almost constant, backing color. This backing color has often been blue, so the problem, and its solution, have been called blue screen matting. However, other backing colors, such as yellow or (increasingly) green, have also been used, so we often generalize to constant color matting. The mathematics of constant color matting is presented and proven to be unsolvable as generally practiced. This, of course, flies in the face of the fact that the technique is commonly used in film and video, so we demonstrate constraints on the general problem that lead to solutions, or at least significantly prune the search space of solutions. We shall also demonstrate that an algorithmic solution is possible by allowing the foreground object to be shot against two constant backing colors—in fact, against two completely arbitrary backings so long as they differ everywhere.
international conference on computer graphics and interactive techniques | 2005
Charles T. Loop; James F. Blinn
We present a method for resolution independent rendering of paths and bounded regions, defined by quadratic and cubic spline curves, that leverages the parallelism of programmable graphics hardware to achieve high performance. A simple implicit equation for a parametric curve is found in a space that can be thought of as an analog to texture space. The image of a curves Bezier control points are found in this space and assigned to the control points as texture coordinates. When the triangle(s) corresponding to the Bezier curve control hull are rendered, a pixel shader program evaluates the implicit equation for a pixels interpolated texture coordinates to determine an inside/outside test for the curve. We extend our technique to handle anti-aliasing of boundaries. We also construct a vector image from mosaics of triangulated Bezier control points and show how to deform such images to create resolution independent texture on three dimensional objects.
international conference on computer graphics and interactive techniques | 2006
Charles T. Loop; James F. Blinn
We consider the problem of real-time GPU rendering of algebraic surfaces defined by Bezier tetrahedra. These surfaces are rendered directly in terms of their polynomial representations, as opposed to a collection of approximating triangles, thereby eliminating tessellation artifacts and reducing memory usage. A key step in such algorithms is the computation of univariate polynomial coefficients at each pixel; real roots of this polynomial correspond to possibly visible points on the surface. Our approach leverages the strengths of GPU computation and is highly efficient. Furthermore, we compute these coefficients in Bernstein form to maximize the stability of root finding, and to provide shader instances with an early exit test based on the sign of these coefficients. Solving for roots is done using analytic techniques that map well to a SIMD architecture, but limits us to fourth order algebraic surfaces. The general framework could be extended to higher order with numerical root finding.
SID Symposium Digest of Technical Papers | 2000
Claude Betrisey; James F. Blinn; Bodin Dresevic; Bill Hill; Greg Hitchcock; Bert Keely; Don P. Mitchell; John Platt; Turner Whitted
This paper describes the filtering used in Microsoft ClearType. ClearType is a software system than enhances the resolution and readability of fonts on displays that contain a repeating pattern of addressable colored sub-pixels. The filtering in ClearType is based on a perceptual model of human vision. The perceptual model leads to an optimization technique for finding the best output values. The results of the optimization can be approximated by pre-filtering each color channel of an input image and then sampling each filtered color image at the spatial locations of the same colored sub-pixels in the display. We refer to this filtering followed by displaced sampling as RGB decimation. RGB decimation eliminates the phase error caused by standard anti-aliasing. A further approximation of the optimal filter yields RGB decimation with displaced box filters. Fourier analysis demonstrates that both the optimization technique and the displaced box filter suppress frequencies that contribute most to color fringing in unfiltered displaced sampling.
international conference on computer graphics and interactive techniques | 1978
James F. Blinn; Martin E. Newell
Clipping is the process of determining how much of a given line segment lies within the boundaries of the display screen. Homogeneous coordinates are a convenient mathematical device for representing and transforming objects. The space represented by homogeneous coordinates is not, however, a simple Euclidean 3-space. It is, in fact, analagous to a topological shape called a “projective plane”. The clipping problem is usually solved without consideration for the differences between Euclidean space and the space represented by homogeneous coordinates. For some constructions, this leads to errors in picture generation which show up as lines marked invisible when they should be visible. This paper will examine these cases and present techniques for correctly clipping the line segments.
international conference on computer graphics and interactive techniques | 1977
James F. Blinn
Homogeneous coordinates have long been a standard tool of computer graphics. They afford a convenient representation (for) various geometric quantities in two and three dimensions. The representation of lines in three dimensions has, however, never been fully described. This paper presents a homogeneous formulation for lines in 3 dimensions as an anti-symmetric 4x4 matrix which transforms as a tensor. This tensor actually exists in both covariant and contravariant forms, both of which are useful in different situations. The derivation of these forms and their use in solving various geometrical problems is described.
IEEE Computer Graphics and Applications | 1993
James F. Blinn
The perspective transformation, which basically turns space inside out, is discussed. Some interesting topological properties of the space represented by homogeneous coordinates are reviewed. It is shown that the perspective transform has practical applications in selecting near and far clipping planes to avoid depth resolution problems encountered with many types of rendering algorithms.<<ETX>>
IEEE Computer Graphics and Applications | 1997
James F. Blinn
The author discusses IEEE floating point representation that stores numbers in what amounts to scientific notation. He considers the sign bit, the logarithm function, function approximations, errors and refinements.
IEEE Computer Graphics and Applications | 1998
James F. Blinn
The tradition of posing unsolved problems in computer graphics goes back to Ivan Sutherlands article Ten unsolved problems in computer graphics, Datamation, vol. 12, no. 5, pp. 22-7 (1966). In this article, the author presents his own personal top 10: (1) novelty; (2) education; (3) systems integration; (4) simplicity; (5) better pixel arithmetic theory; (6) legacy compatibility; (7) arithmetic sloppiness; (8) antialiasing; (9) a modelling/rendering/animation challenge; and (10) finding a use for real-time 3D. Some of the problems I decry have, indeed, been solved in the theoretical sense. The problems remain unsolved in the practical sense, though, because cheap and fast solutions remain elusive. Many of the problems are more sociological and marketing issues than technical. Also, many of them have multiple parts with much overlap.
IEEE Computer Graphics and Applications | 2005
James F. Blinn
The total list of processing required to view a pixel includes antialiasing, offset sampling, color space projection, reconstruction filter compensation, compositing, gamma correction, and quantization and dithering. If we look at all these operations we can see a pattern: Almost all of them throw away information. When we filter out high frequencies, quantize intensities into bins, project a continuous color spectrum into three numbers, and represent geometric edges with a single transparency value we can see that an ordinary-hardware pixel, either refreshed on the screen or stored in a file, is simply a bad data compression technique. Any rendering algorithm or image processing operation that converts data to pixels generally loses information about the original data that it uses as input. A few polygons become thousands of pixels; a high-resolution image becomes a low-resolution image. Conversion to pixels for viewing purposes used to be a slow operation, but with faster processors we no longer need to do the image generation offline for speed purposes. We can recalculate the image whenever we need to look at it.