Python- Projecting a circle with camera.Camera class

104 Views Asked by At

I am currently projecting a circle with the camera.Camera class and different viewing angles.

Specifications:

  1. Circle center -> [0 , 0, 1]
  2. Camera center -> [0, 0, 0] (looking up the z-axis)

I used the camera.Camera class and it all seems fine, but when I change the viewing angle of the y-axis to a higher degree than 60, the points suddenly form a cross. (https://i.stack.imgur.com/GBvDX.png)

In my opinion, this is a code problem (it should form an ellipse). Or is this some projective phenomenon?

Here is my code:

cam = Camera()
cam.set_K_elements(0, 0, 1, a=1)
R = np.identity(3)
cam.set_R(R)
cam.set_t(np.array([[0], [0], [0]]))

rad_y = 1,0472
cam.set_R_euler_angles((0, rad_y, 0))
circle = get_circle_points(1000, 1)
cam.plot_world_points(circle, plot_style="ro", solve_visibility=False)

I am new to projective geometry, and I don't know if this behavior is expected or my fault.

I really appreciate any help you can provide.

0

There are 0 best solutions below