JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://cdn.jsdelivr.net/npm/@mediapipe/camera_utils/camera_utils.js" crossorigin="anonymous"></script>
  <script src="https://cdn.jsdelivr.net/npm/@mediapipe/control_utils/control_utils.js" crossorigin="anonymous"></script>
  <script src="https://cdn.jsdelivr.net/npm/@mediapipe/control_utils_3d/control_utils_3d.js" crossorigin="anonymous"></script>
  <script src="https://cdn.jsdelivr.net/npm/@mediapipe/drawing_utils/drawing_utils.js" crossorigin="anonymous"></script>
  <script src="https://cdn.jsdelivr.net/npm/@mediapipe/pose/pose.js" crossorigin="anonymous"></script>
 <div class="container">
   <video class="input_video" hidden></video>
   <canvas class="output_canvas" width="1280px" height="720px"></canvas>
</div>

JavaScript

const videoElement = document.getElementsByClassName('input_video')[0];
const canvasElement = document.getElementsByClassName('output_canvas')[0];
const canvasCtx = canvasElement.getContext('2d', { willReadFrequenctly: true });
const landmarkContainer = document.getElementsByClassName('landmark-grid-container')[0];

function onResults(results) {
	camera.stop(); // single frame for debugging
  canvasCtx.clearRect(0, 0, canvasElement.width, canvasElement.height);
  canvasCtx.drawImage(results.segmentationMask, 0, 0,
                      canvasElement.width, canvasElement.height);
	const imgData = canvasCtx.getImageData(0, 0, canvasElement.width, canvasElement.height);
  let i = 0;
  for (let y = 0; y<imgData.height; y++) {
		for (let x = 0; x<imgData.width; x++) {
      const confidence = imgData.data[i + 3];
      // do something with confidence here
      if (confidence !== 0) {
      	console.log("found first human pixel at ", x, y);
        return;
      }
      i++;
    }
  }
}

const pose = new Pose({locateFile: (file) => {
  return `https://cdn.jsdelivr.net/npm/@mediapipe/pose/${file}`;
}});
pose.setOptions({
  modelComplexity: 1,
  smoothLandmarks: true,
  enableSegmentation: true,
  smoothSegmentation: true,
  minDetectionConfidence: 0.5,
  minTrackingConfidence: 0.5
});
pose.onResults(onResults);

const camera = new Camera(videoElement, {
  onFrame: async () => {
    await pose.send({image: videoElement});
  },
  width: 500,
  height: 300
});
camera.start();