Close

Open pose on Jetson nano

A project log for Auto tracking camera

A camera that tracks a person & counts reps using *AI*.

lion-mclionheadlion mclionhead 02/17/2023 at 06:540 Comments

The enclosure continued to be a disaster.  The wiring all falls out when it's standing up.  The jetson is real hard to install & might be easier with farsteners.  Scotch is not enough to stop the LCD cable from glitching.  Need to swap it with another cable before ordering a new one.  Viewing angle on the LCD isn't wide enough to see it up close.  Left & right are covered by the enclosure.

1 option is making the stand a permanent back panel & making new lighter legs to stand it on.  Another option is gluing hooks on the existing case.  It's not obvious what kind of cable clamps would work.  The buck converter, switch cable & battery cable are the mane problems.

Finally, the webcam needs to be angled down for the rep counter.

The predicted hell of compiling openpose on a jetson did not disappoint.  The build notes were added to the countreps README.  Opencv's webcam support didn't work, so in went a new V4L2 driver.  The mane problem even on the 4 gig jetson proved to be RAM.  It requires a swap space on a USB flash to do anything at all.  An 

M.2 flash would be better but the jetson supports the M.2 key E derivative of M2.  The M.2 key E derivative is used for laptop wifi so there are no SSDs for it.  

A 192x192 network size runs at 2.5fps & appears to swap every frame to the USB flash.

A 128x128 network size & below runs at 5fps.

Power consumption seems to be 30W.  The heatsink gets flaming hot.  It seems to throttle the GPU based on temperature so the hottest thermal zone stays at 89C.

Temperature can be monitored with:

watch cat ./class/thermal/thermal_zone*/temp

A direct framebuffer GUI would only buy a few megabytes.  The X server only burns 20MB.  Lions still remember when that was a huge amount of memory & what it was like to be 1 of the few animals with enough RAM to run XFree86.

There is a hit saying openpose should be performed using tensorrt instead of caffe.  There are 2 models using tensorrt but only 1 says it's based on the openpose model.

https://github.com/NVIDIA-AI-IOT/trt_pose

https://github.com/spacewalk01/tensorrt-openpose

Part of the game is the TRT models only detect 18 body parts while the caffe model detects 25 body parts.  The caffe model detects 3 more points in the feet & 1 more in the pelvis, which probably don't matter.

Discussions