# Tag Info

15

You can't. You have video of the scene from a single vantage point. Without depth information, you can't infer what the scene would look like from another vantage point.

14

There are two questions that you're asking here. The first is why there is a light source. That's the easy part. Think what happens in the real world: if there's no light source, everything is dark and you can't see anything. That's an uninteresting case in computer graphics, so we usually don't consider it. The second question is why rays are pointing to ...

13

I think the simplest way to think of Convolution is as a method of changing a pixel's value to a new value based on the weight of nearby pixels. It's easy to see why Box Blur: _____________ |1/9|1/9|1/9| |1/9|1/9|1/9| |1/9|1/9|1/9| ------------- works. Convolving this kernel is the same as going through every pixel of a photo and making the new value of ...

11

Raytracing is a very nice and intuitive algorithm, and it is a more physically realistic way of describing the illumination of a scene than rasterization, but: Raytracing is slow, specially if you want to implement the more realistic effects that distinguish it from rasterization (e.g. refraction, reflection, motion blur, soft shadows) because this implies ...

9

The terms you probably want to google for are "inferring depth maps". Just like your brain tricks you into seeing 3d if you close one of your eyes, you can heuristically recover depth maps from single 2d images. See for example Make3D: Depth Perception from a Single Still Image Inferring Depth from Single Images in Natural Scenes Perceiving 3D from 2D ...

8

Assuming you are storing a reference, not the object itself, it may make sense to do this differently depending on your application. For instance, if you were computing collisions with this (solid) circle and the collision was occurring in the lower left hand corner, it'd be easier if you had access to all geometry in that leaf directly from that leaf (...

8

Basic ray tracing has a major problem related to ambient light. Most illumination models treat ambient light as a constant factor pervading the ether. While ray tracing is great for computing reflections, it suffers from numerical instability and complicated surface intersection tests. Ray tracing may not play nicely with hardware accelerated rendering since ...

8

There are actually three related terms: Luminance is a physical measure which represents the luminous intensity per unit area of light travelling in some direction. The units are candela per square metre. This is, if you like, an objective measure of how "intense" light is. Relative luminance is a measure how "intense" light appears to a human; since humans ...

6

One way to think about convolution/crosscorrelation is as if you were searching for some signal in your data. The more the data looks like the kernel, the higher the resulting value will be. I actually take the reverse of the kernel, i.e. as in cross-correlation, but it is basically the same thing. For example, let's say you are looking for a directional ...

6

One of the advantages of a Quadtree is that you don't have to split a node into its child nodes if all of the child nodes would contain the same information. This can save you a lot of memory and can make processing faster. Following this principle, I think it makes more sense to store it only in the root node (method #2). It could save you a lot of memory ...

6

Note that we want to be able to retrieve, for any query range, the points that are inside, or sometimes the points that are closest to that query range. That's why a bounding-volume hierarchy is useful. However, bounding-volume hierarchy is a very general notion. When designing a bounding-volume hierarchy data structure in practice, it is extremely ...

6

You're confusing the number of possible values that a pixel can display with the amount of data being shown at any given instance. The number you give is the number of possible pixel states that your display can be in, multiplied by the number of pixels, which isn't really a meaningful number. (EDIT: As Mehrdad and phihag point out, I'd incorrectly assumed ...

5

There are three kinds of JPEG artifacts. The first and (arguably) most important one is described in Yuval's answer: To a first order the problem is that under high compression all the high frequency information is discarded, and the lowest frequency information remaining is the average color of each 8x8 square. When you take the inverse but leave out the ...

5

Multiplication can inherently be computed faster than division because it parallelizes better. If you recall the multiplication and division methods of written calculation, they work by successive additions or subtractions, with shifts. Anyway, in a multiplication you can multiply the multiplicand by all digits of the multiplier simultaneously, and add the ...

5

Some reasons for using more bits per color channel: Tetrachromats. There are rare humans with four types of cone receptors in their retinas instead of the usual three. These people can distinguish an order of magnitude more color shades than the rest of us. Color gamut. Your question assumes that the 16 million colors available in 8-bit per channel RGB ...

4

Normally in graphics, you interpolate values across a line like so: Point $A$ has value $V_A$ and point $B$ has value $V_B$, then you want to blend the value/color linearly between them as $C$ moves between $A$ and $B$. To do this, you first calculate the ratio (or percentage) of how far $C$ lies across the line $\overline {AB}$. This is equal to $\overline{... 4 I wouldn't say that ray-tracing/path-tracing is dead ... if anything, there's been quite a resurgence of popular interest in the field due to the inherent parallelism of the many associated algorithms in this area combined with the speed of GPU-based systems that are allowing for millions of rays to be calculated per-second. Added to that is the flexibility ... 4 If you think convolution is a little too hard to understand, I recommend you start searching about Mathematical Morphology applied to image processing, the big idea behind Mathematical Morphology is that you'll do a operation very close to the convolution, to "change" the morphology of the image, but retain the topology information, this way, you can make a ... 4 The artefact that you see in JPEG comes from the fact that JPEG divides the image into$8\times 8$blocks of pixels and compresses them separately. The$8\times 8$blocks are visible very clearly in the JPEG appearing in your question. When the image is decompressed, often there is no effort to smooth the boundary regions, and this results in a "blocking" ... 4 The constraint satisfaction problem (CSP) is NP-complete. Identifying blobs is a question about graph connectivity which is in P. Therefore, yes, the question you're asking reduces to CSP but this doesn't tell you anything useful: it just says that CSP is at least as hard as this problem but it might be harder. (In fact, it is strictly harder if P$\neq$NP.... 4 Summing the angles around a point is equivalent to calculating the winding number around that point. It will give you a correct answer in the general case. Going more in depth, I'll try to show that your proposed algorithm has many drawbacks. Algorithmic runtime Algorithmically, your proposed algorithm must iterate over all$N$points. Because of that, we ... 4 A curve can be quantized (also known as rasterized) to a certain precision after which it is discrete, and the issue is gone. If you see a picture that contains a curve on a modern computer, there's a good chance it already has been rasterized (e.g. PNG or jpeg). However, it is possible to represent curves (and other primitives) directly. Then you're ... 3 The "skyline problem" is an example of finding the Pareto front of a set of points in 2-D space. More generally it's an example of multi-objective optimization which has many applications. You might find this thread relevant. 3 The colors are not evenly interpreted by our eyes. When I want to make a picture gray scale, I usually go for the following calculation of the luminance of a pixel. luminance = (r * 0.3) + (g * 0.59) + (b * 0.11) Read more in the Stackoverflow question Formula to determine brightness of RGB color. 3 For the "-facing" rule to hold, you must make sure that all faces are properly oriented. Use the right-hand rule for instance, that means that the vertices of a face should be numbered in such a way that a positive rotation in the plane of the face corresponds to a normal pointing outside of the polyhedron. (Got it ?) Or more simply, every face must come ... 3 Google's Deep Dream project is research being done to visualize neural networks' learning to understand more about them. First, you have to understand a Deep Belief Network on a high level. In short, it's a way for machines to 'learn' about data (images, in this case). That works, essentially, by transforming an input by several matrices (layers) through ... 3 Suggestion: for each point$P$in the point cloud, find which bone it is nearest to, and associate it with that bone. In other words, find which point$Q$on the skeleton is closest to$P$, and associate$P$with$Q$. Now associate$Q$with a particular part of the skeleton (e.g., arm, leg, etc.); that will let you associate$P$with a particular part of ... 3 You can use Xiaolin Wu algorithm, but the concept is not restricted to straight lines, it handles circles, ellipses, any kind of functions. Moreover this is concept of fast antialiasing, if you need some polyline you have to apply it for every segment. If you meant curves, these are locally flat segments, so this concept is still applicable. The thin line ... 3 After conducting more research I did find a solution, but first I will examine solutions suggested by posters and considered by myself and review why they didn't work. This problem reduces to finding all chordless cycles in a planar graph. This was one of my first thoughts early on, but this doesn't work when you consider the following: 5-------f----... 3 You have a 2D convex polygon$G$, and a 3D polyhedron$H$. Let$P_G$denote the plane that the polygon is contained in. The following should work: Their intersection is a 2D polygon. You can find the edges of the intersection as follows: For each triangle of$H$: If the triangle intersects$G\$, output this intersection. This procedure outputs the ...

Only top voted, non community-wiki answers of a minimum length are eligible