Let's add some movements
Now that we know how to add a virtual pyramid, let's see if we can add some movements. Let's see how we can dynamically change the height of the pyramid. When you start, the pyramid will look like this:
If you wait for some time, the pyramid gets taller and it will look like this:
Let's see how to do it in OpenCV Python. Inside the augmented reality code that we just discussed, add the following snippet at the end of the __init__
method in the Tracker
class:
self.overlay_vertices = np.float32([[0, 0, 0], [0, 1, 0], [1, 1, 0], [1, 0, 0], [0.5, 0.5, 4]]) self.overlay_edges = [(0, 1), (1, 2), (2, 3), (3, 0), (0,4), (1,4), (2,4), (3,4)] self.color_base = (0, 255, 0) self.color_lines = (0, 0, 0) self.graphics_counter = 0 self.time_counter = 0
Now that we have the structure, we need to add the code to dynamically change the height. Replace the overlay_graphics()
method with the following method:
def overlay_graphics(self, img, tracked): x_start, y_start, x_end...