Hi list,
Maybe someone here has practical experience with the following:
I am trying to track movement (mostly humans walking around in a room), from a camera that hangs from the ceiling.
My idea is to track each person in the room as a x-y data-point (room length-room width) and use that data to influence sound or video in PD.
Is something like this feasible? I am open to solutions for linux or macOS. The motion tracking can also be an external program that communicates with PD via OSC or similar.
I would like to use open source software if possible.
Thanks for any insights, real world examples etc.
Best,
Simon
Hi Simon et al
I've done a few projects with pose/hand/face tracking running (on mobile), then communicating via OSC messages with a Pd process (in one case on mobile device, in other case over local network to a laptop). For these I've used MediaPipe, this is the pose detection 'solution': https://ai.google.dev/edge/mediapipe/solutions/vision/pose_landmarker which has a python example app (I've only used the mobile example apps, which actually built and ran on the first try...I can't always say the same for python environments)
It's open source (https://github.com/google-ai-edge/mediapipe); given the temperament of this list, everyone is free to criticize its provenance.
Note that the implementation (e.g. the raw graphs and models, etc) are openly available as difficult-to-build targets (using the Bazel build system), or wrapped into prebuilt libraries (via existing dependency managers); it's not an ideal open-source setup (which to me entails easy use/modification of lower levels on canonical build systems). But it should certainly be hackable enough for your purposes.
On Wed, Aug 28, 2024 at 12:14 PM Simon Iten itensimon@gmail.com wrote:
Hi list,
Maybe someone here has practical experience with the following:
I am trying to track movement (mostly humans walking around in a room), from a camera that hangs from the ceiling.
My idea is to track each person in the room as a x-y data-point (room length-room width) and use that data to influence sound or video in PD.
Is something like this feasible? I am open to solutions for linux or macOS. The motion tracking can also be an external program that communicates with PD via OSC or similar.
I would like to use open source software if possible.
Thanks for any insights, real world examples etc.
Best,
Simon
pd-list@lists.iem.at -the Pure Data mailinglist
https://lists.iem.at/hyperkitty/list/pd-list@lists.iem.at/message/YIGXPZSKML...
To unsubscribe send an email to pd-list-leave@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.iem.at/
Simon,
Perhaps you could also look at pix_opencv for blob tracking and edge detection. It should certainly be feasible. We've done something like that in Max.
https://giss.tv/wiki/index.php/Opencv_for_PD
This does not require heavy AI based processing nor depth cameras,
(Separately we are working on an OpenISS Pd port for more than that but it is currently not ready.)
On Wed, 28 Aug 2024, Simon Iten wrote:
Date: Wed, 28 Aug 2024 21:14:16 +0200 From: Simon Iten itensimon@gmail.com To: Pd-List pd-list@lists.iem.at Subject: [PD] Camera motion detection in a room
Hi list,
Maybe someone here has practical experience with the following:
I am trying to track movement (mostly humans walking around in a room), from a camera that hangs from the ceiling.
My idea is to track each person in the room as a x-y data-point (room length-room width) and use that data to influence sound or video in PD.
Is something like this feasible? I am open to solutions for linux or macOS. The motion tracking can also be an external program that communicates with PD via OSC or similar.
I would like to use open source software if possible.
Thanks for any insights, real world examples etc.
Best,
Simon
On 28/08/2024 21:14, Simon Iten wrote:
Hi list,
Maybe someone here has practical experience with the following:
I am trying to track movement (mostly humans walking around in a room), from a camera that hangs from the ceiling.
My idea is to track each person in the room as a x-y data-point (room length-room width) and use that data to influence sound or video in PD.
Is something like this feasible? I am open to solutions for linux or macOS. The motion tracking can also be an external program that communicates with PD via OSC or similar.
[pix_multiblob] was written by students exactly for this purpose (20 years ago,...). it doesn't do any labelling though. you can use [pix_blobtracker] to get a rough labelling.
OpenCV based solutions can of course be much more elaborate...
fgmds IOhannes