Examples¶
Annotate Image¶
import sys
from pathlib import Path
from zoloto.cameras.file import ImageFileCamera
from zoloto.marker_dict import MarkerDict
class TestCamera(ImageFileCamera):
marker_dict = MarkerDict.DICT_6X6_50
def get_marker_size(self):
return 100
with TestCamera(Path(sys.argv[1])) as camera:
camera.save_frame(sys.argv[2], annotate=True)
print( # noqa: T001
"Saw {} markers in this image".format(len(camera.get_visible_markers()))
)
Count Markers¶
from zoloto.cameras.camera import Camera
from zoloto.marker_dict import MarkerDict
class TestCamera(Camera):
marker_dict = MarkerDict.DICT_6X6_50
def get_marker_size(self):
return 100
camera = TestCamera(0)
while True:
marker_ids = camera.get_visible_markers()
print("I can see {} markers".format(len(marker_ids)), end="\r") # noqa: T001
Visual Demo¶
from chrono import Timer
from zoloto.cameras.camera import Camera
from zoloto.marker_dict import MarkerDict
from zoloto.viewer import CameraViewer
class TestCamera(Camera):
marker_dict = MarkerDict.DICT_6X6_50
def get_marker_size(self):
return 100
class Viewer(CameraViewer):
def on_frame(self, frame):
with Timer() as annotate_timer:
camera._annotate_frame(frame)
print(round(annotate_timer.elapsed * 1000), end="\r") # noqa: T001
return frame
camera = TestCamera(0)
Viewer(camera).start()