# Camera angles

Gold Member
A geometry puzzle:

Say I want to obtain an image of an object (eg. a toy car) from every possible angle in 3-dimensions, in, say, 15 degree increments. How many pictures would I need to take?

1] Rotate the car around X axis through 360 degrees in 15 degree increments. Take 24 pictures.
2] Now rotate the car around Y axis by 15 degrees.
3] Repeat steps 1 and 2 23 more times.

24x24=576.

But here's the thing, many shots will be duplicates, merely the same angle of the object but with the image rotated.

So, what is the minimum number of pictures I would need to take?

It occurs to me that this might be simpler if I left the object stationary and moved the camera. Then I would sidestep the whole duplicate angle thing...

114 Shots

Imagin a globe with the car at the middle

First shot is the north pole
2-17 are 15Deg South
18-34 are at 30 Deg
exc...
Last shot is the south pole

1+16*7+1=114

Im pritty sure this is right

Rogerio
Move the camera around (360 degrees in 15 degrees increments) the car, from north pole to south pole (180 degrees in 15 degrees increments).
But you have only 1 picture at the poles.

So, the total is :
1 + 11*24 + 1 = 266

Last edited:
Gold Member
I get a different answer each time I find a different way to add it up.

It occurs to me that this is not an optimal way of getting pics, isnce the difference between two shots varies, depending on whether you're near the poles or the equator.

Ideally, you'd want equidistant points - which I guess means you'd be forming the vertices of a regular polyhedra. There are distorted polyhedra larger then 20 siders, as any board gamer will know. (I've seen 30 and even 100-siders.)

LarrrSDonald
I (too?) feel that the definition is inadequit or at the very least non-optimal. "15 deg increments" isn't well specified in 3d. It makes more sense to use a polyhedra confined to a sphere with angles being normals to the sphere.

Rogerio said:
Move the camera around (360 degrees in 15 degrees increments) the car, from north pole to south pole (180 degrees in 15 degrees increments).
But you have only 1 picture at the poles.

So, the total is :
1 + 11*24 + 1 = 266

Where are you getting 11*24 from?

Not counting the 2 poles there would only be 7 Shots for each 15 deg move.
And 16 moves.

Gold Member
xJuggleboy said:
Where are you getting 11*24 from?

Not counting the 2 poles there would only be 7 Shots for each 15 deg move.
And 16 moves.

a] Are you considering the shots from below? (That's why I chose a toy car rather than a real car as the example.)

b] 15 goes into 360 24 times, not 16 times.

So, at elevation = 0, one complete rotation about the vertical axis requires 24 shots.

There are five elevations above 0 (15,30,45,60,75)
And five below (-15,-30,-45,-60,-75)
For a total of 11 elevations.

We're at 24x11.
Plus the two poles
= 266.

Thanks Rogerio.

gnpatterson
would it be fairer (more tractable) to state the problem as you wish to cover the surface of sphere so that no point on the surface is more than 7.5 degrees away from a camera angle?

The problem with the question as possed is that choice of more "open" networks allows you to choose arrangements that fail to cover some areas well.

from your choice of words "say 15 degrees" I take it that the actual angle is not important. thus I suggest you frame the problem the other way round "Given n cameras what is the minimum maximum angle that (either one camera has to it's nearest neighbour OR that a direction can be from all the cameras)"

You should then have pretty well defined function

n=1 neighbour=360 point=180
n=2 neighbour=180 point=90
n=3 neighbour=120? point=90? (equilateral triangle)
n=4 neighbour=104? point=? (tetrahedral)
n=5 neighbour=90 point=? (trigonal bipyramid)
n=6 neighbour=90 point=? (octahedron)
n=7 ?
n=8 (cube)
etc

after a while it should smooth out to be good enough to just interpolate

Gold Member
gnpatterson said:
would it be fairer (more tractable) to state the problem as you wish to cover the surface of sphere so that no point on the surface is more than 7.5 degrees away from a camera angle?

The problem with the question as possed is that choice of more "open" networks allows you to choose arrangements that fail to cover some areas well.

from your choice of words "say 15 degrees" I take it that the actual angle is not important. thus I suggest you frame the problem the other way round "Given n cameras what is the minimum maximum angle that (either one camera has to it's nearest neighbour OR that a direction can be from all the cameras)"

You should then have pretty well defined function

n=1 neighbour=360 point=180
n=2 neighbour=180 point=90
n=3 neighbour=120? point=90? (equilateral triangle)
n=4 neighbour=104? point=? (tetrahedral)
n=5 neighbour=90 point=? (trigonal bipyramid)
n=6 neighbour=90 point=? (octahedron)
n=7 ?
n=8 (cube)
etc

after a while it should smooth out to be good enough to just interpolate

You are entirely correct, this is the same conclusion I was coming to as I thought it through. There's two problems with that though:
1] a high possibility that "desirable" angles would not be covered (i.e exactly polar, or exactly equatorial or exactly head-on)
2] logistical troubles with actually setting the camera at those angles (cuz it'll be different for each shot)

DaveC426913 said:
a] Are you considering the shots from below? (That's why I chose a toy car rather than a real car as the example.)

b] 15 goes into 360 24 times, not 16 times.

So, at elevation = 0, one complete rotation about the vertical axis requires 24 shots.

There are five elevations above 0 (15,30,45,60,75)
And five below (-15,-30,-45,-60,-75)
For a total of 11 elevations.

We're at 24x11.
Plus the two poles
= 266.

Thanks Rogerio.

I admit it.. I have no ideia what I was thining when I wrote that :rofl:
We had the same ideia... I just got my numbers WAY wrong =-(

Yep, the solid angle should be used to describe and bound the condition. Get the 15 deg increments is equivalent to the quantity of the solid angle, then devided by the 4PI. you will get the answer, maybe it is not a integer, you should think about the taken point actually. I am pretty sure it is the right way.

LarrrSDonald said:
I (too?) feel that the definition is inadequit or at the very least non-optimal. "15 deg increments" isn't well specified in 3d. It makes more sense to use a polyhedra confined to a sphere with angles being normals to the sphere.