Library Home

Introduction to Computer Graphics

(3 reviews)

representation of computer graphics

David J. Eck, Hobart and William Smith Colleges

Copyright Year: 2016

Publisher: David J. Eck

Language: English

Formats Available

Conditions of use.

Attribution-NonCommercial-ShareAlike

Learn more about reviews.

Reviewed by Marietta Cameron, Associate Professor, University of North Carolina Asheville on 2/1/18

The author intentionally and most understandably designed this text to present material for a one semester undergraduate course. Thus the topic coverage is a subset of material typically presented in texts addressing computer graphics. I... read more

Comprehensiveness rating: 3 see less

The author intentionally and most understandably designed this text to present material for a one semester undergraduate course. Thus the topic coverage is a subset of material typically presented in texts addressing computer graphics. I appreciate the implementations in Java, C, and JavaScript. Since the OpenSource 3D animation software Blender with its python interface is presented, maybe later editions of this text will include implementations in python. The hyperlinked terms and the demos embedded in the text’s online version enhance student learning. I respectfully disagree with the author’s decision to present foundational concepts with the much older OpenGL 1.1 and glut when he could do the same with OpenGL 4.5( or later) and freeglut. I also think that students would find chapter exercises helpful.

Content Accuracy rating: 4

This book's content is accurate with a few typos.

Relevance/Longevity rating: 2

As I have already mentioned, I strongly suggest the author drop all references to OpenGL 1.1 except in a section on the history of OpenGL. I agree that geometric modeling, transformations, color, lighting, textures, animation are fundamental but students (and industry) seem to ignore academics who present any ideas with what they (students and industry experts) perceive as outdated technologies.

Clarity rating: 5

The text is as clear as its "commercially available" counterparts.

Consistency rating: 4

The text is mostly consistent in terms of terminology and framework. A minor complaint is the occasional tense switch between first person singular and first person plural.

Modularity rating: 4

The text is written with an approach in mind....the topics can be rearranged with moderate effort.

Organization/Structure/Flow rating: 5

The organization is understandable, logical, and clear.

Interface rating: 3

It would be helpful if all figures and demos were numbered and labeled. Maybe later editions could include interactive exercises that would assess student understanding.

Grammatical Errors rating: 5

A few typos but nothing glaring.

Cultural Relevance rating: 3

This text avoids cultural references. Maybe it could offer more references to graphical software, games, animations, and special interest groups such as ACM SIGGRAPH, SIGCHI, and IGDA (International Game Developers Association).

I would include this text as a supplemental resource to for my students.

representation of computer graphics

Reviewed by Jong Kwan Lee, Associate Professor, Bowling Green State University on 2/1/18

The contents of the book cover many topics in computer graphics that should be enough for an introductory level computer graphics course. However, some contents might need a little more explanation (e.g., Bezier curves) and I would like it to... read more

Comprehensiveness rating: 4 see less

The contents of the book cover many topics in computer graphics that should be enough for an introductory level computer graphics course. However, some contents might need a little more explanation (e.g., Bezier curves) and I would like it to include a coverage in clipping algorithms.

Content Accuracy rating: 5

The contents of the book seem very accurate. There are a variety of computer graphics topics covered, some more in details than others, with simple examples and interactive demos and these seem to be accurate.

Relevance/Longevity rating: 4

The book primary covers the basics in computer graphics. While some contents are not the most up-to-date materials, they are very adequate for introductory level computer graphics courses. I would personally use a different platform than Java in a computer graphics course, but the contents can be adapted to others.

Clarity rating: 4

Most of the contents are clear and adequate for a computer graphics textbook. However, there are a couple of topics that I would have like it to cover more in depth so that it might be easier for students to understand the topics.

Consistency rating: 5

The author presented the contents very consistently. The same approach is used to explain various computer graphics topics.

Modularity rating: 5

The took is easily and readily divisible into smaller reading sections. For example, I would cover some subsections from different chapters with other subsections and the book contents seem to be modular to do so.

Organization/Structure/Flow rating: 4

In general, I like the organization so that the contents are introduced in a logical way. However, there were a couple of sub-topics that could be combined with other sub-topics if I were to teach a computer graphics course with the book.

Interface rating: 5

There was no interface issue I could find. Links and demos that I checked all work properly.

No grammar mistake was found.

Cultural Relevance rating: 5

I don't think this question is related to the contents of the book. But the book had no issue for the point.

The book covers both 2D and 3D computer graphics topics with examples and demos. It should be a good textbook for an introductory level computer graphics book.

Reviewed by Brian Barsky, Professor of Computer Science, University of California, Berkeley on 2/1/18

This book is a guide for how write graphics programs using OpenGL and WebGL. It does not provide a an explanation of the concepts, methods, mathematics, physics algorithms, science, psychology, etc., etc., that one would find in a standard... read more

Comprehensiveness rating: 1 see less

This book is a guide for how write graphics programs using OpenGL and WebGL. It does not provide a an explanation of the concepts, methods, mathematics, physics algorithms, science, psychology, etc., etc., that one would find in a standard graphics text book, such as the ones by Foley et al., Shirley, Hearn & Baker, etc., etc.

Relevance/Longevity rating: 5

That is fine

That is fine.

Seemed fine.

no problems (and not a relevant question)

I would like to reiterate my overarching concern that this book is a guide for how write graphics programs using OpenGL and WebGL and does not provide a an explanation of the concepts, methods, mathematics, physics algorithms, science, psychology, etc., etc., that one would find in a standard graphics text book, such as the ones by Foley et al., Shirley, Hearn & Baker, etc., etc. As such, it is reminiscent of the Open GL Programming Guide by Mason Woo, Jackie Neider, Tom Davis, and Dave Shreiner. This would be a useful adjunct to a real computer graphics text book, such as the ones by Foley et al., Hearn & Baker, or Shirley but would not provide a suitable replacement for a real computer graphics textbook like that.

Table of Contents

  • Chapter 1: Introduction
  • Chapter 2: Two-Dimensional Graphics
  • Chapter 3: OpenGL 1.1: Geometry
  • Chapter 4: OpenGL 1.1: Light and Material
  • Chapter 5: Three.js: A 3D Scene Graph API
  • Chapter 6: Introduction to WebGL
  • Chapter 7: 3D Graphics with WebGL
  • Chapter 8: Beyond Realtime Graphics
  • Appendix A: Programming Languages
  • Appendix B: Blender: A 3D Modeling Program
  • Appendix C: Gimp and Inkscape for 2D Graphics
  • Appendix D: Source Code for Sample Programs
  • Appendix E: Glossary

Ancillary Material

  • David J. Eck

About the Book

Introduction to Computer Graphics is a free, on-line textbook covering the fundamentals of computer graphics and computer graphics programming. This book is meant for use as a textbook in a one-semester course that would typically be taken by undergraduate computer science majors in their third or fourth year of college.

About the Contributors

David J. Eck Ph.D. is a Professor at Department of Mathematics and Computer Science at the Hobart and William Smith Colleges.

Contribute to this Page

  • Random article
  • Teaching guide
  • Privacy & cookies

A NASA computer graphic visualization of a black hole.

by Chris Woodford . Last updated: July 12, 2022.

Photo: Computer graphics allows us to "visualize" (imagine, mathematically) all sorts of things we can't (or won't ever) see. This image explores how the extreme gravity of two orbiting black holes distorts the light around them. Graphics by Jeremy Schnittman and Brian P. Powell, courtesy of NASA Goddard Space Flight Center .

What is computer graphics?

Photo: Oil paints like these can produce magical results in the right hands—but only in the right hands. Thankfully, those of us without the talent and skill to use them can still produce decent everyday art with computer graphics.

Raster and vector graphics

Photo: Raster graphics: This is a closeup of the paintbrushes in the photo of the artist's paint palette up above. At this magnification, you can clearly see the individual colored pixels (squares) from which the image is built, like bricks in a wall.

Photo: How a raster graphics program mirrors an image. Top: The pixels in the original image are represented by zeros and ones, with black pixels represented here by 1 and white ones represented by zero. That means the top image can be stored in the computer's memory as the binary number 100111. That's an example of a very small bitmap. Bottom: Now if you ask the computer to mirror the image, it simply reverses the order of the bits in the bitmap, left to right, giving the binary number 111001, which automatically reverses the original pattern of pixels. Other transformations of the picture, such as rotation and scaling, involve swapping the bits in more complex ways.

Photo: How anti-aliasing works. Pixelated images, like the word "pixelated" shown here, are made up of individual squares or dots, which are really easy for raster graphics displays (such as LCD computer screens) to draw. I copied this image directly from the italic word "pixelated" in the text up above. If you've not altered your screen colors, the original tiny text probably looks black and very smooth to your eyes. But in this magnified image, you'll see the letters are actually very jagged and made up of many colors. If you move back from your screen, or squint at the magnified word, you'll see the pixels and colors disappear back into a smooth black-and-white image. This is an example of anti-aliasing, a technique used to make pixelated words and other shapes smoother and easier for our eyes to process.

Vector graphics

Photo: Vector graphics: Drawing with Bézier curves ("paths") in the GIMP. You simply plot two points and then bend the line running between them however you want to create any curve you like.

3D graphics

Photo: NASA scientists think computer graphics will one day be so good that computer screens will replace the cockpit windows in airplanes . Instead of looking at a real view, the pilots will be shown a computerized image drawn from sensors that work at day or night in all weather conditions. For now, that remains a science fiction dream, because even well-drawn "3D" computer images like this are easy to tell from photographs of real-world scenes: they simply don't contain enough information to fool our amazingly fantastic eyes and brains. Photo courtesy of NASA Glenn .

What is computer graphics used for?

Photo: Computer graphics can save lives. Medical scan images are often complex computerized images built up from hundreds or thousands of detailed measurements of the human body or (as shown here) brain. Image by Govind Bhagavatheeshwaran and Daniel Reich courtesy of National Institutes of Health .

What is computer-aided design (CAD)?

Photo: Designing a plane? CAD makes it quicker and easier to transfer what's in your mind's eye into reality. Graphics by Ethan Baumann courtesy of NASA .

Graphics: CAD drawing of a hyper-X plane courtesy of NASA Langley Research Center (NASA-LaRC).

What is CAD used for?

Using cad in architecture.

Photo: Architectural models are traditionally made from paper or cardboard, but they're laborious and expensive to make, fragile and difficult to transport, and virtually impossible to modify. Computer models don't suffer from any of these drawbacks. Photo by Warren Gretz courtesy of US DOE/NREL .

Who invented computer graphics?

The beginnings.

  • 1951: Jay Forrester and Robert Everett of Massachusetts Institute of Technology (MIT) produce Whirlwind , a mainframe computer that can display crude images on a television monitor or VDU (visual display unit).
  • 1955: Directly descended from Whirlwind, MIT's SAGE (Semi-Automatic Ground Equipment) computer uses simple vector graphics to display radar images and becomes a key part of the US missile defense system.
  • 1959: General Motors and IBM develop Design Augmented by Computers-1 (DAC-1), a CAD (computer-aided design) system to help engineers design cars.
  • 1961: John Whitney, Sr. uses computer graphics to design a captivating title sequence for the Alfred Hitchcock thriller Vertigo .
  • 1961: MIT student Steve Russell programs Spacewar! , the first graphical computer game, on a DEC PDP-1 minicomputer.
  • 1963: Ivan Sutherland , a pioneer of human-computer interaction (making computers intuitively easy for humans to use), develops Sketchpad (also called Robot Draftsman), one of the first computer-aided design packages, in which images can be drawn on the screen using a lightpen (an electronic pen/stylus wired into the computer). Later, Sutherland develops virtual reality equipment and flight simulators.
  • 1965: Howard Wise holds an exhibition of computer-drawn art at his pioneering gallery in Manhattan, New York.
  • 1966: NASA's Jet Propulsion Laboratory (JPL) develops an image-processing program called VICAR (Video Image Communication and Retrieval) , running on IBM mainframes, to process images of the moon captured by spacecraft.
  • 1970: Bézier curves are developed, soon becoming an indispensable tool in vector graphics.

Photo: A NASA scientist draws a graphic image on an IBM 2250 computer screen with a light pen. This was state-of-the-art technology in the 1970s! Photo by courtesy of NASA Ames Research Center (NASA-ARC) .

Computer graphics for everyone

Screenshot of an early pixelated space invaders arcade game.

Photo: Computer graphics, early 1980s style! Arcade games like Space Invaders were how most 40- and 50-something computer geeks first experienced computer graphics. At that time, even good computer screens could display only about 64,000 pixels—hence the relatively crudely drawn, pixelated graphics.

  • 1972: Atari releases PONG , a popular version of ping-pong (table tennis) played by one or two players on a computer screen.
  • 1973: Richard Shoup produces SuperPaint , a forerunner of modern computer graphic packages, at the Xerox PARC (Palto Alto Research Center) laboratory.
  • 1970s: Ivan Sutherland's student Edwin Catmull becomes one of the pioneers of 3D computer-graphic animation, later playing key roles at Lucasfilm, Pixar, and Disney.
  • 1981: UK company Quantel develops Paintbox , a revolutionary computer-graphic program that allows TV producers and filmakers to edit and manipulate video images digitally.
  • 1982: The movie Tron , starring Jeff Bridges, mixes live action and computer graphic imagery in a story that takes a man deep inside a computer system.
  • 1980s: The appearance of the affordable, easy-to-use Apple Macintosh computer paves the way for desktop publishing (designing things on your own small office computer) with popular computer graphic packages such as Aldus PageMaker (1985) and QuarkXPress (1987).
  • 1985: Microsoft releases the first version of a basic raster-graphics drawing program called MS Paint . Thanks to its stripped-down simplicity, it becomes one of the world's most popular computer art programs.
  • 1990: The first version of Adobe PhotoShop (one of the world's most popular professional graphic design packages) is released. A simple, affordable home graphics program called PaintShop (later PaintShop Pro) is launched the same year.
  • 1993: University of Illinois student Marc Andreessen develops Mosaic , the first web browser to show text and images side-by-side, prompting a huge explosion in interest in the Web virtually overnight.
  • 1995: Toy Story , produced by Pixar Animation Studios (founded by Apple's Steve Jobs, with Ed Catmull as its chief technology officer) demonstrates the impressive possibilities of CGI graphics in moviemaking. Stunning follow-up movies from the same stable include A Bug's Life , Monsters, Inc ., Finding Nemo , and The Incredibles .
  • 1995: The GIMP (GNU Image Manipulation Program) is developed by University of California students Spencer Kimball and Peter Mattis as an open-source alternative to PhotoShop..
  • 1999: The World Wide Web Consortium (W3C) begins development of SVG (Scalable Vector Graphics) , a way of using text-based (XML) files to provide higher-quality images on the Web. SVG images can include elements of both conventional vector and raster graphics.
  • 2007: Apple launches its iPhone and iPod Touch products with touchscreen graphical user interfaces.
  • 2017: Microsoft announces it will not kill off its basic but very popular Paint program, loved by computer artists for over 30 years.
  • 2021: Facebook unveils plans for a new, interactive work and play space called the Metaverse. Will we live much of our future life in a computer-graphic virtual world?

If you liked this article...

Don't want to read our articles try listening instead, find out more, on this website.

  • Computer models
  • Computer mouse
  • History of computers
  • How to draw scientific artworks

On other websites

  • ACM SIGGRAPH : Worldwide conference for computer graphics professionals held annually since 1974. (The acronym stands for the Association for Computing Machinery's Special Interest Group on Computer Graphics and Interactive Techniques.)
  • Computer Graphics: Principles and Practice by John F. Hughes, Andries van Dam, et al. Addison-Wesley Professional, 2014. Classic introductory textbook, now in its third edition.
  • Computer Graphics: Theory and Practice by Jonas Gomes et al. CRC Press, 2012. A relatively accessible up-to-date introduction, with less complex math than some of the other basic texts.
  • Computer Graphics: Theory into Practice by Jeffrey J. McConnell. Jones and Bartlett, 2006. A much more theoretical and abstract approach to computer graphics that takes the human visual system as its starting point: if you know how our eyes work, you can produce more effective graphics.
  • 3D Computer Graphics by Alan Watt. Addison-Wesley, 2000. Introduces 3D graphics for computer-aided design and the Web.
  • AutoCAD for Dummies by Bill Fane. John Wiley & Sons, 2019. How to create and annotate technical drawings and models with AutoCAD.
  • Computer Aided Design Guide for Architecture, Engineering and Construction by Ghassan Aouad, Angela Lee, and Song Wu. Spon, 2012. Very much an applied introducton to 2D, 3D, and 4D CAD.
  • AutoCAD: Professional Tips and Techniques by Lynn Allen and Scott Onstott. Addison-Wesley, 2007. Hands-on introduction to one of the industry-standard CAD packages.
  • Computer-Aided Design by Dean L. Taylor. Addison-Wesley, 1992. Quite old new, but still a comprehensive overview and a good introduction to the basic concepts.
  • The Real Story of Pixar by Alvy Ray Smith, IEEE Spectrum, 3 Aug 2021. A look behind the scenes at the CGI pioneers.
  • Chip Hall of Fame: Nvidia NV20 by Katherine Bourzac. IEEE Spectrum, 2 July 2018. Celebrating the classic graphics processor chip from 2001.
  • Behold, the World's Most Famous Teapot by David C. Brock. IEEE Spectrum, 25 October 2017. How an exercise in mathematical modeling became a computer graphics icon.
  • Microsoft Paint avoids brush with death by Zoe Kleinman. BBC News, 25 July 2017. The popular painting program gets a new lease of life.
  • Motion Capture Technology Goes Into the Wild for Dawn of the Planet of the Apes by Tekla Perry. IEEE Spectrum, 10 July 2014. Motion capture helps computer graphic artists to draw movement more realistically by "tracking" the motion of a real, human actor. Here's how it worked on a typical movie, Dawn of Planet of the Apes.
  • Yes, Your PC Can Generate Graphics This Stunning by Ryan Rigney, Wired, 25 September 2013. A review of Valley Benchmark and how it delivers realistic landscapes.
  • GrabCAD Is Building Community in 3-D by Sarah Mitroff, Wired, 15 October 2012. A brief look at GrabCAD, a kind of Github for engineers and CAD designers.
  • Creation Engine: Autodesk Wants to Help Anyone, Anywhere, Make Anything by Bob Parks, Wired, 21 September 2012. The latest computer-aided design software aims to predict how objects will behave after they leave the "virtual" computer screen and arrive in the real world.
  • New Graphics Tech Promises Speed, Hyperrealism : Wired, April 22, 2010. New techniques make it easier to implement 3D graphics without extra hardware.

Text copyright © Chris Woodford 2010, 2022. All rights reserved. Full copyright notice and terms of use .

Rate this page

Tell your friends, cite this page, more to explore on our website....

  • Get the book
  • Send feedback

Javatpoint Logo

  • Computer Fundamentals

Computer Graphics

Computer Network

  • Interview Q

Graphic Systems

Input-output devices, scan conversion a line, scan conversion circle, scan converting ellipse, filled area primitives, 2d transformations, clipping techniques, pointing & positioning, 3d computer graphics, hidden surfaces.

JavaTpoint

Computer Graphics involves technology to access. The Process transforms and presents information in a visual form. The role of computer graphics insensible. In today life, computer graphics has now become a common element in user interfaces, T.V. commercial motion pictures.

Computer Graphics is the creation of pictures with the help of a computer. The end product of the computer graphics is a picture it may be a business graph, drawing, and engineering.

In computer graphics, two or three-dimensional pictures can be created that are used for research. Many hardware devices algorithm has been developing for improving the speed of picture generation with the passes of time. It includes the creation storage of models and image of objects. These models for various fields like engineering, mathematical and so on.

Today computer graphics is entirely different from the earlier one. It is not possible. It is an interactive user can control the structure of an object of various input devices.

It is the use of computers to create and manipulate pictures on a display device. It comprises of software techniques to create, store, modify, represents pictures.

Suppose a shoe manufacturing company want to show the sale of shoes for five years. For this vast amount of information is to store. So a lot of time and memory will be needed. This method will be tough to understand by a common man. In this situation graphics is a better alternative. Graphics tools are charts and graphs. Using graphs, data can be represented in pictorial form. A picture can be understood easily just with a single look.

Interactive computer graphics work using the concept of two-way communication between computer users. The computer will receive signals from the input device, and the picture is modified accordingly. Picture will be changed quickly when we apply command.

Good knowledge and understanding of the concepts of C programming language are necessary for learning the concepts of Computer graphics. Good understanding about basic mathematics allows us to better understand the concept of computer graphics.

This tutorial is helpful for the students who are interested in learning the use of graphics on the computer. The tutorial covers the basics of graphics and development of various visuals by the implementation of graphics in the computer.

We assure that you will not find any problem with this Computer Graphics Tutorial. But if there is any mistake, please post the problem in the contact form.





Youtube

  • Send your Feedback to [email protected]

Help Others, Please Share

facebook

Learn Latest Tutorials

Splunk tutorial

Transact-SQL

Tumblr tutorial

Reinforcement Learning

R Programming tutorial

R Programming

RxJS tutorial

React Native

Python Design Patterns

Python Design Patterns

Python Pillow tutorial

Python Pillow

Python Turtle tutorial

Python Turtle

Keras tutorial

Preparation

Aptitude

Verbal Ability

Interview Questions

Interview Questions

Company Interview Questions

Company Questions

Trending Technologies

Artificial Intelligence

Artificial Intelligence

AWS Tutorial

Cloud Computing

Hadoop tutorial

Data Science

Angular 7 Tutorial

Machine Learning

DevOps Tutorial

B.Tech / MCA

DBMS tutorial

Data Structures

DAA tutorial

Operating System

Computer Network tutorial

Compiler Design

Computer Organization and Architecture

Computer Organization

Discrete Mathematics Tutorial

Discrete Mathematics

Ethical Hacking

Ethical Hacking

Computer Graphics Tutorial

Software Engineering

html tutorial

Web Technology

Cyber Security tutorial

Cyber Security

Automata Tutorial

C Programming

C++ tutorial

Control System

Data Mining Tutorial

Data Mining

Data Warehouse Tutorial

Data Warehouse

RSS Feed

Cornell CIS Program of Computer Graphics

representation of computer graphics

  • Student Research Opportunities
  • Graduate Program
  • Educational Resources
  • Images & Animation
  • Community Resources
  • Publications

What is Computer Graphics?

  • History & Achievements

Radiosity Factory Render

The field of computer graphics is a broad and diverse field that exists cross section between computer science and design. It is interested in the entire process of creating computer generated imagery, from creating digital three-dimensional models, to the process of texturing, rendering, and lighting those models, to the digital display of those renderings on a screen.

Wireframe and shaded models

This process starts with simple object rendering techniques to transform mathematical representations of three-dimensional objects into a two-dimensional screen image, calculating projection transformations of vertices as well as occlusion and depth of objects. 

Shading and rendering of a vase

Detail and realism is added to these images through simulation of materials, textures, and lighting. The most accurate and realistic techniques involve understanding the way light interacts with objects in the physical world, and simulating those interactions as closely as possible on a computer. Phenomena such as reflections, transparencies, or diffuse lighting can be modeled using a variety of different algorithms, some designed to be physically accurate, others to be computationally efficient, depending on different needs. Virtual reality imagery must be generated in a matter of milliseconds, while a detailed architectural rendering may take hours of computation time.

Radiosity light sculpture

With developments both in the hardware of GPUs and the software of rendering engines, Computer Graphics developments continue to push the bounds of both accuracy and speed of computer generated imagery.

A graphic is an image or visual representation of an object. Therefore, computer graphics are simply images displayed on a computer screen. Graphics are often contrasted with text, which is comprised of characters , such as numbers and letters, rather than images.

Computer graphics can be either two or three-dimensional. Early computers only supported 2D monochrome graphics, meaning they were black and white (or black and green, depending on the monitor ). Eventually, computers began to support color images. While the first machines only supported 16 or 256 colors, most computers can now display graphics in millions of colors.

2D graphics come in two flavors — raster and vector . Raster graphics are the most common and are used for digital photos, Web graphics, icons , and other types of images. They are composed of a simple grid of pixels , which can each be a different color. Vector graphics, on the other hand are made up of paths, which may be lines, shapes, letters, or other scalable objects. They are often used for creating logos, signs, and other types of drawings. Unlike raster graphics, vector graphics can be scaled to a larger size without losing quality.

3D graphics started to become popular in the 1990s, along with 3D rendering software such as CAD and 3D animation programs. By the year 2000, many video games had begun incorporating 3D graphics, since computers had enough processing power to support them. Now most computers now come with a 3D video card that handles all the 3D processing. This allows even basic home systems to support advanced 3D games and applications.

Test Your Knowledge

Erasing and reintializng a hard disk is also called what?

Tech Factor

Related terms.

  • Raster Graphic
  • Vector Graphic
  • Color Depth

The Tech Terms Computer Dictionary

The definition of Graphics on this page is an original definition written by the TechTerms.com team . If you would like to reference this page or cite this definition, please use the green citation links above.

The goal of TechTerms.com is to explain computer terminology in a way that is easy to understand. We strive for simplicity and accuracy with every definition we publish. If you have feedback about this definition or would like to suggest a new technical term, please contact us .

Sign up for the free TechTerms Newsletter

You can unsubscribe or change your frequency setting at any time using the links available in each email. Questions? Please contact us .

We just sent you an email to confirm your email address. Once you confirm your address, you will begin to receive the newsletter.

If you have any questions, please contact us .

Computer Graphics Tutorial

  • Computer Graphics Tutorial
  • Computer Graphics Home
  • Computer Graphics Basics
  • Line Generation Algorithm
  • Circle Generation Algorithm
  • Polygon Filling Algorithm
  • Viewing & Clipping
  • 2D Transformation
  • 3D Computer Graphics
  • 3D Transformation

Computer Graphics Curves

  • Computer Graphics Surfaces
  • Visible Surface Detection
  • Computer Graphics Fractals
  • Computer Animation
  • Useful Resources
  • Computer Graphics - Quick Guide
  • Computer Graphics - Resources
  • Computer Graphics - Discussion
  • Selected Reading
  • UPSC IAS Exams Notes
  • Developer's Best Practices
  • Questions and Answers
  • Effective Resume Writing
  • HR Interview Questions
  • Computer Glossary

In computer graphics, we often need to draw different types of objects onto the screen. Objects are not flat all the time and we need to draw curves many times to draw an object.

Types of Curves

A curve is an infinitely large set of points. Each point has two neighbors except endpoints. Curves can be broadly classified into three categories − explicit, implicit, and parametric curves .

Implicit Curves

Implicit curve representations define the set of points on a curve by employing a procedure that can test to see if a point in on the curve. Usually, an implicit curve is defined by an implicit function of the form −

f(x, y) = 0

It can represent multivalued curves (multiple y values for an x value). A common example is the circle, whose implicit representation is

x 2 + y 2 - R 2 = 0

Explicit Curves

A mathematical function y = f(x) can be plotted as a curve. Such a function is the explicit representation of the curve. The explicit representation is not general, since it cannot represent vertical lines and is also single-valued. For each value of x, only a single value of y is normally computed by the function.

Parametric Curves

Curves having parametric form are called parametric curves. The explicit and implicit curve representations can be used only when the function is known. In practice the parametric curves are used. A two-dimensional parametric curve has the following form −

P(t) = f(t), g(t) or P(t) = x(t), y(t)

The functions f and g become the (x, y) coordinates of any point on the curve, and the points are obtained when the parameter t is varied over a certain interval [a, b], normally [0, 1].

Bezier Curves

Bezier curve is discovered by the French engineer Pierre Bézier . These curves can be generated under the control of other points. Approximate tangents by using control points are used to generate curve. The Bezier curve can be represented mathematically as −

$$\sum_{k=0}^{n} P_{i}{B_{i}^{n}}(t)$$

Where $p_{i}$ is the set of points and ${B_{i}^{n}}(t)$ represents the Bernstein polynomials which are given by −

$${B_{i}^{n}}(t) = \binom{n}{i} (1 - t)^{n-i}t^{i}$$

Where n is the polynomial degree, i is the index, and t is the variable.

The simplest Bézier curve is the straight line from the point $P_{0}$ to $P_{1}$. A quadratic Bezier curve is determined by three control points. A cubic Bezier curve is determined by four control points.

Bezier Curves

Properties of Bezier Curves

Bezier curves have the following properties −

They generally follow the shape of the control polygon, which consists of the segments joining the control points.

They always pass through the first and last control points.

They are contained in the convex hull of their defining control points.

The degree of the polynomial defining the curve segment is one less that the number of defining polygon point. Therefore, for 4 control points, the degree of the polynomial is 3, i.e. cubic polynomial.

A Bezier curve generally follows the shape of the defining polygon.

The direction of the tangent vector at the end points is same as that of the vector determined by first and last segments.

The convex hull property for a Bezier curve ensures that the polynomial smoothly follows the control points.

No straight line intersects a Bezier curve more times than it intersects its control polygon.

They are invariant under an affine transformation.

Bezier curves exhibit global control means moving a control point alters the shape of the whole curve.

A given Bezier curve can be subdivided at a point t=t0 into two Bezier segments which join together at the point corresponding to the parameter value t=t0.

B-Spline Curves

The Bezier-curve produced by the Bernstein basis function has limited flexibility.

First, the number of specified polygon vertices fixes the order of the resulting polynomial which defines the curve.

The second limiting characteristic is that the value of the blending function is nonzero for all parameter values over the entire curve.

The B-spline basis contains the Bernstein basis as the special case. The B-spline basis is non-global.

A B-spline curve is defined as a linear combination of control points Pi and B-spline basis function $N_{i,}$ k (t) given by

$C(t) = \sum_{i=0}^{n}P_{i}N_{i,k}(t),$ $n\geq k-1,$ $t\: \epsilon \: [ tk-1,tn+1 ]$

{$p_{i}$: i=0, 1, 2….n} are the control points

k is the order of the polynomial segments of the B-spline curve. Order k means that the curve is made up of piecewise polynomial segments of degree k - 1,

the $N_{i,k}(t)$ are the “normalized B-spline blending functions”. They are described by the order k and by a non-decreasing sequence of real numbers normally called the “knot sequence”.

$${t_{i}:i = 0, ... n + K}$$

The N i , k functions are described as follows −

$$N_{i,1}(t) = \left\{\begin{matrix} 1,& if \:u \: \epsilon \: [t_{i,}t_{i+1}) \\ 0,& Otherwise \end{matrix}\right.$$

and if k > 1,

$$N_{i,k}(t) = \frac{t-t_{i}}{t_{i+k-1}} N_{i,k-1}(t) + \frac{t_{i+k}-t}{t_{i+k} - t_{i+1}} N_{i+1,k-1}(t)$$

$$t \: \epsilon \: [t_{k-1},t_{n+1})$$

Properties of B-spline Curve

B-spline curves have the following properties −

The sum of the B-spline basis functions for any parameter value is 1.

Each basis function is positive or zero for all parameter values.

Each basis function has precisely one maximum value, except for k=1.

The maximum order of the curve is equal to the number of vertices of defining polygon.

The degree of B-spline polynomial is independent on the number of vertices of defining polygon.

B-spline allows the local control over the curve surface because each vertex affects the shape of a curve only over a range of parameter values where its associated basis function is nonzero.

The curve exhibits the variation diminishing property.

The curve generally follows the shape of defining polygon.

Any affine transformation can be applied to the curve by applying it to the vertices of defining polygon.

The curve line within the convex hull of its defining polygon.

Chapter 1. Digital image representation
   

Chapter 1. Digital image representation

“ Virtual image, a point or system of points, on one side of a mirror or lens, which, if it existed, would emit the system of rays which actually exists on the other side of the mirror or lens. ”

Vector images

One way to describe an image using numbers is to declare its contents using position and size of geometric forms and shapes like lines, curves, rectangles and circles; such images are called vector images.

Coordinate system

We need a coordinate system to describe an image, the coordinate system used to place elements in relation to each other is called user space , since this is the coordinates the user uses to define elements and position them in relation to each other.

Figure 1.1. Coordinate system.

Coordinate system.

The coordinate system used for all examples in this document has the origin in the upper left, with the x axis extending to the right and y axis extending downwards.

Defining shapes

It would have been nice to make a smiling face, instead of the dissatisfied face on the left, by using a bezier curve, or the segment of a circle this could be achieved, this being a text focusing mainly on raster graphics though, that would probably be too complex.

A simple image of a face can be declared as follows:

Figure 1.2. Vector image

Vector image

The preceding description of an image can be seen as a “ cooking recipe ” for how to draw the image, it contains geometrical primitives like lines, curves and cirles describing color as well as relative size, position and shape of elements. When preparing the image for display is has to be translated into a bitmap image , this process is called rasterization .

A vector image is resolution independent, this means that you can enlarge or shrink the image without affecting the output quality. Vector images are the preferred way to represent Fonts, Logos and many illustrations.

Bitmap images

Bitmap-, or raster [ 1 ] -, images are “ digital photographs ”, they are the most common form to represent natural images and other forms of graphics that are rich in detail. Bitmap images is how graphics is stored in the video memory of a computer. The term bitmap refers to how a given pattern of bits in a pixel maps to a specific color.

Note

In the other chapters of , raster images is the only topic.

Figure 1.3.  Raster image

Raster image

A bitmap images take the form of an array, where the value of each element, called a pixel picture element, correspond to the color of that portion of the image. Each horizontal line in the image is called a scan line .

The letter 'a' might be represented in a 12x14 matrix as depicted in Figure 3., the values in the matrix depict the brightness of the pixels (picture elements). Larger values correspond to brighter areas whilst lower values are darker.

When measuring the value for a pixel, one takes the average color of an area around the location of the pixel. A simplistic model is sampling a square, this is called a box filter, a more physically accurate measurement is to calculate a weighted Gaussian average (giving the value exactly at the pixel coordinates a high weight, and lower weight to the area around it). When perceiving a bitmap image the human eye should blend the pixel values together, recreating an illusion of the continuous image it represents.

Raster dimensions

The number of horizontal and vertical samples in the pixel grid is called Raster dimensions , it is specified as width x height.

Resolution is a measurement of sampling density, resolution of bitmap images give a relationship between pixel dimensions and physical dimensions. The most often used measurement is ppi, pixels per inch [ 2 ] .

Figure 1.4. Sampling grid

Sampling grid

Megapixels refer to the total number of pixels in the captured image, an easier metric is raster dimensions which represent the number of horizontal and vertical samples in the sampling grid. An image with a 4:3 aspect ratio with dimension 2048x1536 pixels, contain a total of 2048x1535=3,145,728 pixels; approximately 3 million, thus it is a 3 megapixel image.

Table 1.1. Common/encountered raster dimensions

DimensionsMegapixelsNameComment
640x4800.3VGAVGA
720x5760.4CCIR 601 DV PALDimensions used for PAL DV, and PAL DVDs
768x5760.4CCIR 601 PAL fullPAL with square sampling grid ratio
800x6000.4SVGA 
1024x7680.8XGAThe currently (2004) most common computer screen dimensions.
1280x9601.2  
1600x12002.1UXGA 
1920x10802.11080i HDTVinterlaced, high resolution digital TV format.
2048x15363.12KTypically used for digital effects in feature films.
3008x19605.3  
3088x20566.3  
4064x270411.1  

Scaling / Resampling

When we need to create an image with different dimensions from what we have we scale the image. A different name for scaling is resampling, when resampling algorithms try to reconstruct the original continous image and create a new sample grid.

Scaling image down

The process of reducing the raster dimensions is called decimation , this can be done by averaging the values of source pixels contributing to each output pixel.

Scaling image up

When we increase the image size we actually want to create sample points between the original sample points in the original raster, this is done by interpolation the values in the sample grid, effectivly guessing the values of the unknown pixels [ 3 ] .

Sample depth

The values of the pixels need to be stored in the computers memory, this means that in the end the data ultimately need to end up in a binary representation, the spatial continuity of the image is approximated by the spacing of the samples in the sample grid. The values we can represent for each pixel is determined by the sample format chosen.

Figure 1.5. Sample depth

Sample depth

A common sample format is 8bit integers, 8bit integers can only represent 256 discrete values (2^8 = 256), thus brightness levels are quantized into these levels.

For high dynamic range images (images with detail both in shadows and highlights) 8bits 256 discrete values does not provide enough precision to store an accurate image. Some digital cameras operate with more than 8bit samples internally, higher end cameras (mostly SLRs) also provide RAW images that often are 12bit (2^12bit = 4096).

The PNG and TIF image formats supports 16bit samples, many image processing and manipulation programs perform their operations in 16bit when working on 8bit images to avoid quality loss in processing.

Floating point

Some image formats used in research and by the movie industry store floating point values. Both "normal" 32bit floating point values and a special format called half which uses 16bits/sample. Floating point is useful as a working format because quantization and computational errors are kept to a minimum until the final render.

Floating point representations often include HDR, High Dynamic Range . High Dynamic Range images are images that include sampling values that are whiter than white (higher values than 255 for a normal 8bit image). HDR allows representing the light in a scene with a greater degree of precision than LDR, Low Dynamic Range images.

The most common way to model color in Computer Graphics is the RGB color model, this corresponds to the way both CRT monitors and LCD screens/projectors reproduce color. Each pixel is represented by three values, the amount of red, green and blue. Thus an RGB color image will use three times as much memory as a gray-scle image of the same pixel dimensions.

Figure 1.6. RGB bands

RGB bands

One of the most common pixel formats used is 8bit rgb where the red, green and blue values are stored interleaved in memory. This memory layout is often referred to as chunky , storing the components in seperate buffers is called planar , and is not as common.

Palette / Indexed images

It was earlier common to store images in a palletized mode, this works similar to a paint by numbers strategy. We store just the number of the palette entry used for each pixel. And for each palette entry we store the amount of red, green and blue light.

Figure 1.7. Indexed image

Indexed image

Image compression

Bitmap images take up a lot of memory, image compression reduces the amount of memory needed to store an image. For instance a 2.1 megapixel, 8bit RGB image (1600x1200) occupies 1600x1200x3 bytes = 5760000 bytes = 5.5 megabytes, this is the uncompressed size of the image.

Compression ratio is the ratio between the compressed image and the uncompressed image, if the example image mentioned above was stored as a 512kb jpeg file the compression ratio would be 0.5mb : 5.5mb = 1:11.

Lossless Image Compression

When an image is losslessly compressed, repetition and predictability is used to represent all the information using less memory. The original image can be restored. One of the simplest lossless image compression methods is run-length encoding. Run-length encoding encodes consecutive similar values as one token in a data stream.

Figure 1.8. Run-length encoding

Run-length encoding

In Figure 1.8, “Run-length encoding” a black and white image of a house has been compressed with run length encoding, the bitmap is considered as one long string of black/or white pixels, the encoding is how many bytes of the same color occur after each other. We'll further reduce the amount of bytes taken up by these 72 numerical values by having a maximum span length of 15, and encoding longer spans by using multiple spans separated by zero length spans of the other color.

The new encoding is 113 nibbles long, a nibble i 4bit and can represent the value 0--4, thus we need 57 bytes to store all our values, which is less than the 93 bytes we would have needed to store the image as a 1bit image, and much less than the 750 bytes needed if we used a byte for each pixel. Run length encoding algorithms used in file formats would probably use additional means to compress the RLE stream achieved here.

Lossy Image Compression

Lossy image compression takes advantage of the human eyes ability to hide imperfection and the fact that some types of information are more important than others. Changes in luminance are for instance seen as more significant by a human observer than change in hue.

JPEG is a file format implementing compression based on the Discrete Cosine Transform DCT , together with lossless algorithms this provides good compression ratios. The way JPEG works is best suited for images with continuous tonal ranges like photographs, logos, scanned text and other images with lot's of sharp contours / lines will get more compression artifacts than photographs.

Loss through Generations

Lossy compression algorithms should not be used as a working format, only final copies should be saved as jpeg since loss accumulates over generations.

Figure 1.9. JPEG generation loss

JPEG generation loss

An image specially constructed to show the deficiencies in the JPEG compression algorithm, saved, reopened and saved again 9 times.

JPEG is most suited for photographics content where the adverse effect of the compression algorithm is not so evident.

JPEG is not suited as an intermediate format, only use JPEG for final distribution where filesize actually matters.

File formats and applications

Many applications have their own internal file format, while other formats are more suited for interchange of data. Table ref# lists some common image formats.

Table 1.2. Vector File Formats

ExtensionNameNotes
.aiAdobe Illustrator DocumentNative format of Adobe Illustrator (based on .eps)
.epsEncapsulated PostscriptIndustry standard for including vector graphics in print
.psPostScriptVector based printing language, used by many Laser printers, used as electronic paper for scientific purposes.
.pdfPortable Document FormatModernized version of ps, adopted by the general public as 'electronic print version'
.svgScalable Vector GraphicsXML based W3C standard, incorporating animation, gaining adoption.
.swfShockwave FlashBinary vector format, with animation and sound, supported by most major web browsers.

Table 1.3. Raster File Formats

ExtensionNameNotes
.jpgJoint Photographic Experts GroupLossy compression format well suited for photographic images
.pngPortable Network GraphicsLossless compression image, supporting 16bit sample depth, and Alpha channel
.gifGraphics Interchange Format8bit indexed bitmap format, is superceded by PNG on all accounts but animation
.exrEXRHDR, High Dynamic Range format, used by movie industry..
.raw, .rawRaw image fileDirect memory dump from a digital camera, contains the direct imprint from the imaging sensor without processing with whitepoint and gamma corrections. Different cameras use different extensions, many of them derivatives of TIFF, examples are .nef, .raf and .crw
.dgnDigital NegativeA subset/clarification of TIFF, created by Adobe to provide a standard for storing RAW files, as well as exchanging RAW image data between applications.
.tiff, .tifTagged Image File Format 
.psdPhotoshop DocumentNative format of Adobe Photoshop, allows layers and other structural elements
.xcfGimp Project FileGIMP's native image format.

[ 1 ] raster n: formation consisting of the set of horizontal lines that is used to form an image on a CRT

[ 2 ] The difference between ppi and dpi , is the difference between pixels and dots - pixels can represent multiple values, whilst a dot is a monochrome spot of ink or toner of a single colorant as produced by a printer. Printers use a process called half toning to create a monochrome pattern the simulates a range of intensity levels.

[ 3 ] When using the digital zoom of a camera, the camera is using interpolating to guess the values that are not present in the image. Capturing an image at the maximum analog zoom level, and doing the post processing of cropping and rescaling on the computer will give equal or better results.

   
Preface   Chapter 2. The gluas environment

To get a sense of what you'll do in the class, check out some student creations from Fall 2020!

Course prerequisites are (15-213, 21-259, and 21-240) or (15-213, 21-259, and 21-241) or (18-213 and 18-202). Basic vector calculus and linear algebra will be an important component of this course. Previous exposure to basic C/C++ programming is very helpful as course programming assignments will involve significant implementation effort.

There is no required textbook for 15-462, though a variety of books may provide good supplementary material:

Steve Marschner and Pete Shirley Fundamentals of Computer Graphics . A K Peters, 2021 [ On Amazon ]

John F. Hughes, Andries van Dam, Morgan McGuire, David F. Sklar, James D. Foley, Steven K. Feiner, and Kurt Akeley Computer Graphics: Principles and Practice [ On Amazon ]

Matt Pharr and Greg Humphreys Physically Based Rendering: From Theory to Implementation [ On Amazon ] This book (PBRT) is the book for learning about modern ray tracing techniques. It has a great website with full source code online for an advanced physically-based ray tracer. The textbook is online as well. It even won an oscar for its impact on the film industry!

We will be using Piazza for announcements. The 15-462/662 Piazza page is here .

(15%) Written Assignments (Assignment 0 and MiniHomeworks). About once per week, you will be assigned a short ''mini homework'' assignment (just a few questions) that reinforces the most essential concepts. At the beginning of the semester, you will also complete some written exercises (Assignments 0.0 and 0.5) reviewing linear algebra and vector calculus. Assignments 0.0 and 0.5 can be submitted through Autolab. All mini homework written homework can be submitted via GradeScope; mini homeworks will be released on Mondays and must be submitted before the beginning of the lecture period on the following Monday. To mitigate potential absences (sick days, etc.), students can omit up to two mini homeworks without penalty . Students are encouraged to discuss concepts with their peers, on Piazza, and/or in office hours. Final homework answers must be written independently and individually for Assignments 0.0 and 0.5. Mini homeworks can be done in groups of up to three students if desired.

(60%) Programming Assignments. Students will complete four programming assignments; each assignment will be worth 25% of the programming component of the course, or 15% of the overall course grade. All assignments will be done individually.

(20%) Midterm / Final. There will be a midterm and a final, each worth 10% of the overall course grade. Both exams will cover the cumulative material seen in the course so far.

(5%) Class Participation. At the end of the semester, we will ask each of you to propose what you think you should receive for a class participation grade. Aspects of participation are class attendance, in-class comments, constructive contributions to piazza and discord, and other contributions to the class. Final grade assignment, however, is at the discretion of the instructors.

Late hand-in policy. Each student is allotted a total of five late-day points for the semester. Late-day points are meant for A1.0, A1.5, A2.0, A2.5, A3.0, A3.5, and A4.0. They may not be used for A4.5. You probably do not want to use late day points for A0.0 and A0.5. Get those in on time!

  • A student can extend a programming assignment deadline by one day using one point.
  • If a student does not have remaining late day points, late hand-ins will incur a 10% penalty per day (10% of max points on the assignment).
  • Late-day points get used up for each checkpoint. So for instance, even if you already used one late point for A2.0, you would still have to use another late point if you wanted to turn in A2.5 a day late.
  • No assignments will be accepted more than three days after the deadline. This is true whether or not the student has late-day points remaining.

Students in 15-462 are absolutely encouraged to talk to each other, to the TAs, to the instructors, or to anyone else about course assignments. Any assistance, though, must be limited to discussion of the problems and sketching general approaches to a solution. Each student should write their own code and produce their own writeup. Consulting another student's solution is prohibited and submitted solutions may not be copied from any source. These and any other form of collaboration on assignments constitute cheating. If you have any question about whether some activity would constitute cheating, just be cautious and ask the instructors before proceeding!

If you are caught cheating, you will get a zero for the entire course (not just the assignment). Also, if two identical assignments are handed in, both students will be accountable for cheating (no questions asked). So please be careful to ensure that nobody is copying your work!

You may not supply code, assignment writeups, or exams you complete during 15-462/662 to other students in future instances of this course or make these items available (e.g., on the web) for use in future instances of this course (just as you may not use work completed by students who've taken the course previously). Make sure to make repositories private if you use public source control hosts like github.

FPO++: efficient encoding and rendering of dynamic neural radiance fields by analyzing and enhancing Fourier PlenOctrees

New citation alert added.

This alert has been successfully added and will be sent to:

You will be notified whenever a record that you have chosen has been cited.

To manage your alert preferences, click on the button below.

New Citation Alert!

Please log in to your account

Information & Contributors

Bibliometrics & citations, view options, recommendations, merf: memory-efficient radiance fields for real-time view synthesis in unbounded scenes.

Neural radiance fields enable state-of-the-art photorealistic view synthesis. However, existing radiance field representations are either too compute-intensive for real-time rendering or require too much memory to scale to large scenes. We present a ...

A practical and fast rendering algorithm for dynamic scenes using adaptive shadow fields

Recently, a precomputed shadow fields method was proposed for achieving fast rendering of dynamic scenes under environment illumination and local light sources. This method can render shadows fast by precomputing the occlusion information at many sample ...

Adaptive Shells for Efficient Neural Radiance Field Rendering

Neural radiance fields achieve unprecedented quality for novel view synthesis, but their volumetric formulation remains expensive, requiring a huge number of samples to render high-resolution images. Volumetric encodings are essential to represent fuzzy ...

Information

Published in.

Springer-Verlag

Berlin, Heidelberg

Publication History

Author tags.

  • Neural radiance fields
  • Dynamic scenes
  • Real-time rendering
  • Fourier transform
  • Research-article

Funding Sources

  • Rheinische Friedrich-Wilhelms-Universität Bonn (1040)

Contributors

Other metrics, bibliometrics, article metrics.

  • 0 Total Citations
  • 0 Total Downloads
  • Downloads (Last 12 months) 0
  • Downloads (Last 6 weeks) 0

View options

Login options.

Check if you have access through your login credentials or your institution to get full access on this article.

Full Access

Share this publication link.

Copying failed.

Share on social media

Affiliations, export citations.

  • Please download or close your previous search result export first before starting a new bulk export. Preview is not available. By clicking download, a status dialog will open to start the export process. The process may take a few minutes but once it finishes a file will be downloadable from your browser. You may continue to browse the DL while the export process is in progress. Download
  • Download citation
  • Copy citation

We are preparing your search results for download ...

We will inform you here when the file is ready.

Your file of search results citations is now ready.

Your search export query has expired. Please try again.

On-the-fly Point Feature Representation for Point Clouds Analysis

  • Wang, Jiangyi
  • Cheng, Zhongyao
  • Yang, Xulei

Point cloud analysis is challenging due to its unique characteristics of unorderness, sparsity and irregularity. Prior works attempt to capture local relationships by convolution operations or attention mechanisms, exploiting geometric information from coordinates implicitly. These methods, however, are insufficient to describe the explicit local geometry, e.g., curvature and orientation. In this paper, we propose On-the-fly Point Feature Representation (OPFR), which captures abundant geometric information explicitly through Curve Feature Generator module. This is inspired by Point Feature Histogram (PFH) from computer vision community. However, the utilization of vanilla PFH encounters great difficulties when applied to large datasets and dense point clouds, as it demands considerable time for feature generation. In contrast, we introduce the Local Reference Constructor module, which approximates the local coordinate systems based on triangle sets. Owing to this, our OPFR only requires extra 1.56ms for inference (65x faster than vanilla PFH) and 0.012M more parameters, and it can serve as a versatile plug-and-play module for various backbones, particularly MLP-based and Transformer-based backbones examined in this study. Additionally, we introduce the novel Hierarchical Sampling module aimed at enhancing the quality of triangle sets, thereby ensuring robustness of the obtained geometric features. Our proposed method improves overall accuracy (OA) on ModelNet40 from 90.7% to 94.5% (+3.8%) for classification, and OA on S3DIS Area-5 from 86.4% to 90.0% (+3.6%) for semantic segmentation, respectively, building upon PointNet++ backbone. When integrated with Point Transformer backbone, we achieve state-of-the-art results on both tasks: 94.8% OA on ModelNet40 and 91.7% OA on S3DIS Area-5.

  • Computer Science - Computer Vision and Pattern Recognition
  • Trending Now
  • Foundational Courses
  • Data Science
  • Practice Problem
  • Machine Learning
  • System Design
  • DevOps Tutorial

Interpolation Methods in Computer Graphics

Interpolation is a method of constructing new data points within range of discrete set of known data points. The number of data points obtained by sampling or experimentation represents values of function for limited number of values of independent variable.

The main task of Interpolation is to find suitable mathematical expression for known curve. This technique is used when we have to draw curve by determining intermediate points between known sample points.

Types of Interpolation methods :

  • Inverse Distance Weighted (IDW) – In this method, estimation of cell values is done by averaging values of sample data points in neighborhood of each processing cell. A specified number of points or all points within specified radius can be used to determine output value of each location. The point closer to center of cell have more influence or weight in averaging process.
  • Kriging – Kriging is geostatistical procedure that considers both distance and degree of variations between known data points when estimating values in unknown areas. In this procedure, there is generation of an estimated surface from scattered set of points with z-values.
  • Natural Neighbor – Natural Neighbour interpolation method finds closest subset of input samples to query point. It applies weights to input samples based on proportionate areas to interpolate value. It is also known as Sibson or “area-stealing” interpolation.
  • Spline – In this interpolation method, estimation of values is done using mathematical function that minimizes overall surface curvature and results in smooth surface that passes exactly through input points.
  • Spline with barriers – Spline with barriers method is similar to spline method, only difference is that this tool honors discontinuities encoded in both input barriers and input point data.
  • Topo to raster – This method uses technique specifically designed to create surface that more closely represents natural drainage surface and better preserves stream networks from input contour data.
  • Trend – It is a global polynomial interpolation that fits smooth surface defined by mathematical function (a polynomial) to input sample points. The trend surface changes gradually and captures coarse-scale patterns in data.

author

Please Login to comment...

Similar reads.

  • computer-graphics

Improve your Coding Skills with Practice

 alt=

What kind of Experience do you want to share?

IMAGES

  1. The computer graphics industry evolves

    representation of computer graphics

  2. PPT

    representation of computer graphics

  3. “Introduction to Computer Graphics with WebGL” in “Computer Graphics

    representation of computer graphics

  4. CG Lecture 02 || Computer Graphics 3D object Modeling Representation

    representation of computer graphics

  5. PPT

    representation of computer graphics

  6. Boundary Representation In Computer Graphics

    representation of computer graphics

VIDEO

  1. Spline Representation (Computer Graphics )

  2. Computer Graphics: 3D Object Representation| Polygon Table, Plane equations, Polygon Meshes

  3. Representation

  4. MOD-3

  5. Laptop's digital realm with 3D animated charts

  6. data representation in digital computer||Binary digits||electronic switch|| #subscribe @csworld810

COMMENTS

  1. Introduction to Computer Graphics

    The RGB color model is one of the most widely used color representation method in computer graphics. It use a color coordinate system with three primary colors: R(red), G(green), B(blue) Each primary color can take an intensity value ranging from 0(lowest) to 1(highest). Mixing these three primary colors at different intensity levels produces a var

  2. Computer graphics

    Computer graphics deals with generating images and art with the aid of computers. Computer graphics is a core technology in digital photography, film, video games, digital art, cell phone and computer displays, and many specialized applications. ... Raster graphics is the representation of images as an array of pixels and is typically used for ...

  3. Introduction to Computer Graphics

    Introduction to Computer Graphics is a free, on-line textbook covering the fundamentals of computer graphics and computer graphics programming. This book is meant for use as a textbook in a one-semester course that would typically be taken by undergraduate computer science majors in their third or fourth year of college.

  4. PDF Computer Graphics and Visualization: Introduction and Overview

    Computer Graphics Definition • What is Computer Graphics? - (Realistic) Pictorial synthesis of real and/or imaginary objects from their computer-based models (or datasets) • Fundamental, core elements of computer graphics - Modeling: representation choices, geometric processing

  5. Computer graphics: Introduction and history

    Raster and vector graphics. All computer art is digital, but there are two very different ways of drawing digital images on a computer screen, known as raster and vector graphics. Simple computer graphic programs like Microsoft Paint and PaintShop Pro are based on raster graphics, while more sophisticated programs such as CorelDRAW, AutoCAD ...

  6. Computer Graphics Curve in Computer Graphics

    The implicit representation for the circle is: X^2+Y^2-R^2=0 ... Computer graphics is an important part of Computer science. This help to gain knowledge about the designs & the coloring. Computer graphics is the part that helps to create digital images with the help of coding. So, the images or the objects that are generated using the ...

  7. PDF Introduction to Computer Graphics Techniques and Applications

    Pictorial synthesis of real and/or imaginary objects from their computer-based models (or datasets) Fundamental, core elements of computer graphics. Modeling: representation choices, geometric processing. Rendering: geometric transformation, visibility, simulation of light. Interaction: input/output devices, tools.

  8. PDF CSE328 Fundamentals of Computer Graphics: Concepts, Theory, Algorithms

    Basic Elements of Computer Graphics •Graphics modeling: representation choices •Graphics rendering: geometric transformation, visibility, discretization, simulation of light, etc. •Graphics interaction: input/output devices, tools •Animation: lifelike characters, their interactions, surrounding virtual environments

  9. Computer graphics (computer science)

    Computer graphics is a sub-field of computer science which studies methods for digitally synthesizing and manipulating visual content. Although the term often refers to the study of three-dimensional computer graphics, it also encompasses two-dimensional graphics and image processing. ... Two dimensional surfaces are a good representation for ...

  10. PDF 1 Three-Dimensional Object Representations Chapter 1

    The main goal of three-dimensional computer graphics is to generate two-dimensional images of a scene or of an object based on a a description or a model. The internal representation of an object depends on several implications: The object may be a real object or it exists only as a computer representation. The manufacturing of the object is ...

  11. PDF Graphics and Visualization (GV)

    Graphics and Visualization (GV) Computer graphics is the term commonly used to describe the computer generation and. manipulation of images. It is the science of enabling visual communication through computation. Its uses include cartoons, film special effects, video games, medical imaging, engineering, as. well as scientific, information, and ...

  12. Vector Graphics in Computer Graphics

    Mathematical Representation: Vector graphics represent object shapes and trajectories using mathematical calculations. These formulas determine element position, size, and properties. ... graphics is an important part of Computer science. This help to gain knowledge about the designs & the coloring. Computer graphics is the part that helps ...

  13. Computer Graphics Tutorial

    Computer Graphics is the creation of pictures with the help of a computer. The end product of the computer graphics is a picture it may be a business graph, drawing, and engineering. In computer graphics, two or three-dimensional pictures can be created that are used for research. Many hardware devices algorithm has been developing for ...

  14. What is Computer Graphics?

    The field of computer graphics is a broad and diverse field that exists cross section between computer science and design. It is interested in the entire process of creating computer generated imagery, from creating digital three-dimensional models, to the process of texturing, rendering, and lighting those models, to the digital display of those renderings on a screen.

  15. Graphics Definition

    Graphics: A graphic is an image or visual representation of an object. Therefore, computer graphics are simply images displayed on a computer screen. Graphics are often contrasted with text, which is comprised of characters , such as numbers and letters, rather than images.

  16. Computer Graphics Curves

    Computer Graphics Curves - In computer graphics, we often need to draw different types of objects onto the screen. ... The explicit representation is not general, since it cannot represent vertical lines and is also single-valued. For each value of x, only a single value of y is normally computed by the function. Parametric Curves. Curves ...

  17. PDF CSE328 Fundamentals of Computer Graphics: Concepts, Theory, Algorithms

    Department of Computer Science Center for Visual Computing CSE328 Fundamentals of Computer Graphics: Concepts, Theory, Algorithms, and Applications Hong Qin Department of Computer Science State University of New York at Stony Brook (Stony Brook University) Stony Brook, New York 11794--4400 Tel: (631)632-8450; Fax: (631)632-8334 [email protected]

  18. Chapter 1. Digital image representation

    Bitmap images. Bitmap-, or raster [ 1] -, images are " digital photographs ", they are the most common form to represent natural images and other forms of graphics that are rich in detail. Bitmap images is how graphics is stored in the video memory of a computer. The term bitmap refers to how a given pattern of bits in a pixel maps to a ...

  19. PDF Adaptively Sampled Distance Fields: A General Representation of Shape

    April 25, 2000. ape for Computer GraphicsSarah F. Frisken Ronald N. Perry Alyn P. Rockwood Thouis R. JonesAbstractAdaptively Sampled Distance Fields (ADFs) are a unifying representation of shape that integrate numerous concepts in computer graphics including the representation of geometry and volume data and a broad range of processing ...

  20. Parametric Modeling in Computer Graphics

    Computer graphics is an important part of Computer science. This help to gain knowledge about the designs & the coloring. Computer graphics is the part that helps to create digital images with the help of coding. So, the images or the objects that are generated using the Computer graphics will have a trace of the programming. Computer graphics

  21. Course Information : Computer Graphics : Spring 2024

    Computer Graphics (CMU 15-462/662) CMU 15-462/662, Spring 2024. Date/Time: Mon/Wed 11:00am-12:20pm. Location: WeH 7500. Instructor: Nancy Pollard. Course Description. This course provides a comprehensive introduction to computer graphics. It focuses on fundamental concepts and techniques, and their cross-cutting relationship to multiple problem ...

  22. FPO++: efficient encoding and rendering of dynamic neural radiance

    Fourier PlenOctrees have shown to be an efficient representation for real-time rendering of dynamic neural radiance fields (NeRF). Despite its many advantages, this method suffers from artifacts introduced by the involved compression when combining it with recent state-of-the-art techniques for training the static per-frame NeRF models.

  23. On-the-fly Point Feature Representation for Point Clouds Analysis

    Point cloud analysis is challenging due to its unique characteristics of unorderness, sparsity and irregularity. Prior works attempt to capture local relationships by convolution operations or attention mechanisms, exploiting geometric information from coordinates implicitly. These methods, however, are insufficient to describe the explicit local geometry, e.g., curvature and orientation. In ...

  24. Computer Graphics Homogeneous Coordinates

    Computer graphics is an important part of Computer science. This help to gain knowledge about the designs & the coloring. Computer graphics is the part that helps to create digital images with the help of coding. So, the images or the objects that are generated using the Computer graphics will have a trace of the programming. Computer graphics

  25. Interpolation Methods in Computer Graphics

    Computer Graphics has become a common element in today's modern world. Be it in user interfaces, data visualization, motion pictures, etc, computer graphics play an important role. ... The RGB color model is one of the most widely used color representation method in computer graphics. It use a color coordinate system with three primary colors ...