diff options
Diffstat (limited to 'virtual-programs/camera.folk')
| -rw-r--r-- | virtual-programs/camera.folk | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/virtual-programs/camera.folk b/virtual-programs/camera.folk new file mode 100644 index 00000000..b865392e --- /dev/null +++ b/virtual-programs/camera.folk @@ -0,0 +1,37 @@ +if {$::isLaptop} return + +namespace eval ::Camera { + variable WIDTH 1280 + variable HEIGHT 720 +} + +On process { + source pi/Camera.tcl + source pi/AprilTags.tcl + Camera::init 1280 720 + AprilTags::init + + puts "Camera tid: [getTid]" + + while true { + set cameraTime [time { + set grayFrame [Camera::grayFrame] + }] + set aprilTime [time { + set tags [AprilTags::detect $grayFrame] + }] + + Commit { + Claim the camera frame is $grayFrame + + Claim the camera time is $cameraTime + Claim the AprilTag time is $aprilTime + + foreach tag $tags { + Claim tag [dict get $tag id] has center [dict get $tag center] size [dict get $tag size] + Claim tag [dict get $tag id] has corners [dict get $tag corners] + } + } + Step + } +} |
