我将p5.js和clmtrackr.js一起用于具有面部检测功能的网络摄像头流。在人像模式(90度旋转)下使用相机很重要。
问题是我无法使用面部跟踪器旋转摄像机的视频流。
如果我对draw()部分中的图像应用“ translate(width,0); angleMode(DEGREES); rotation(90); ”,则可以很好地用于流式传输,但不能用于人脸跟踪器正常工作,因为faceTracker.start使用setup()中的videoInput并且没有旋转。
如何完成?也许有一种方法可以在setup()部分中应用旋转?
感谢您的帮助。
我的代码:
function setup()
{
pixelDensity(1);
outputWidth = 1280;
outputHeight = 720;
createCanvas(outputWidth, outputHeight);
let constraints = {
video: {
width: { min: 1280, ideal: 1280 },
height: { min: 720, ideal: 720 },
},
audio: false
};
// webcam capture
videoInput = createCapture(constraints);
videoInput.size(outputWidth, outputHeight);
videoInput.hide();
// tracker
faceTracker = new clm.tracker();
faceTracker.init();
faceTracker.start(videoInput.elt);
}
function draw()
{
image(videoInput, 0, 0, 1280, 720);
}