Zum Hauptinhalt springen

XR8.FaceController.pipelineModule()

XR8.FaceController.pipelineModule()

Beschreibung​

Erstellt ein Kamera-Pipelinemodul, das nach der Installierung RĂŒckrufe empfĂ€ngt, wenn die Kamera gestartet wurde, Ereignisse der Kameraprozessierung und andere StatusĂ€nderungen. Diese werden verwendet, um die Position der Kamera zu berechnen.

Parameter​

Keine

Returns​

Return-Wert ist ein Objekt, das onUpdate als zur VerfĂŒgung gestellt wird:

processCpuResult.facecontroller: { rotation, position, intrinsics, cameraFeedTexture }

EigentumTypBeschreibung
rotation{w, x, y, z}Die Ausrichtung (Quaternion) der Kamera in der Szene.
position{x, y, z}Die Position der Kamera in der Szene.
intrinsisch[Nummer]Eine 16-dimensionale 4x4-Spalten-Projektionsmatrix, die der Szenekamera das gleiche Sichtfeld wie dem gerenderten Kamerabild gibt.
cameraFeedTextureWebGLTexturDie Textur, die die Kamerafeed-Daten enthÀlt.

Versendete Ereignisse​

faceloading: Wird ausgelöst, wenn der Ladevorgang fĂŒr zusĂ€tzliche Gesichtseffekt-AR-Ressourcen beginnt.

faceloading.detail : {maxDetections, pointsPerDetection, indices, uvs}

EigentumTypBeschreibung
maxDetectionsNummerDie maximale Anzahl von Gesichtern, die gleichzeitig verarbeitet werden können.
pointsPerDetectionNummerAnzahl der Scheitelpunkte, die pro FlÀche extrahiert werden.
indices[{a, b, c}]Die Liste der Indizes im Scheitelpunkt-Array, die die Dreiecke des angeforderten Netzes bilden, wie mit meshGeometry in XR8.FaceController.configure() angegeben.
uvs[{u, v}]Die Liste der UV-Positionen in einer Textur-Map, die den zurĂŒckgegebenen Scheitelpunkten entspricht.

facescanning: Wird ausgelöst, wenn alle Gesichtseffekt-AR-Ressourcen geladen wurden und das Scannen begonnen hat.

facescanning.detail : {maxDetections, pointsPerDetection, indices, uvs}

EigentumTypBeschreibung
maxDetectionsNummerDie maximale Anzahl von Gesichtern, die gleichzeitig verarbeitet werden können.
pointsPerDetectionNummerAnzahl der Scheitelpunkte, die pro FlÀche extrahiert werden.
indices[{a, b, c}]Die Liste der Indizes im Scheitelpunkt-Array, die die Dreiecke des angeforderten Netzes bilden, wie mit meshGeometry in XR8.FaceController.configure() angegeben.
uvs[{u, v}]Die Liste der UV-Positionen in einer Textur-Map, die den zurĂŒckgegebenen Scheitelpunkten entspricht.

facefound: Wird ausgelöst, wenn ein Gesicht zum ersten Mal gefunden wird.

facefound.detail : {id, transform, vertices, normals, attachmentPoints}

EigentumTypBeschreibung
idNummerEine numerische ID der gefundenen FlÀche.
transform{position, rotation, scale, scaledWidth, scaledHeight, scaledDepth}Transformieren Sie die Informationen der gefundenen FlÀche.
vertices[{x, y, z}]Position der Gesichtspunkte, relativ zur Transformation.
normals[{x, y, z}]Normale Richtung der Scheitelpunkte, relativ zur Transformation.
attachmentPoints{{>_head.html}}Siehe XR8.FaceController.AttachmentPoints fĂŒr eine Liste der verfĂŒgbaren Befestigungspunkte. die Position ist relativ zur Transformation.
uvsInCameraFrame[{x, y, z}]Die Liste der uv-Positionen im Kamerabild, die den zurĂŒckgegebenen Scheitelpunkten entsprechen.

transform ist ein Objekt mit den folgenden Eigenschaften:

EigentumTypBeschreibung
position{x, y, z}Die 3d-Position der gefundenen FlÀche.
rotation{w, x, y, z}Die lokale 3d-Ausrichtung der georteten FlÀche.
scaleNummerEin Skalierungsfaktor, der auf Objekte angewendet werden soll, die mit dieser FlÀche verbunden sind.
scaledWidthNummerUngefĂ€hre Breite des Kopfes in der Szene, multipliziert mit dem Maßstab.
scaledHeightNummerUngefĂ€hre Höhe des Kopfes in der Szene, multipliziert mit dem Maßstab.
scaledDepthNummerUngefĂ€hre Tiefe des Kopfes in der Szene, multipliziert mit dem Maßstab.

faceupdated: Wird ausgelöst, wenn ein Gesicht nachtrÀglich gefunden wird.

faceupdated.detail : {id, transform, vertices, normals, attachmentPoints}

EigentumTypBeschreibung
idNummerEine numerische ID der gefundenen FlÀche.
transform{position, rotation, scale, scaledWidth, scaledHeight, scaledDepth}Transformieren Sie die Informationen der gefundenen FlÀche.
vertices[{x, y, z}]Position der Gesichtspunkte, relativ zur Transformation.
normals[{x, y, z}]Normale Richtung der Scheitelpunkte, relativ zur Transformation.
attachmentPoints{{>_head.html}}Siehe XR8.FaceController.AttachmentPoints fĂŒr eine Liste der verfĂŒgbaren Befestigungspunkte. die Position ist relativ zur Transformation.
uvsInCameraFrame[{u, v}]Die Liste der uv-Positionen im Kamerabild, die den zurĂŒckgegebenen Scheitelpunkten entsprechen.

transform ist ein Objekt mit den folgenden Eigenschaften:

EigentumTypBeschreibung
position{x, y, z}Die 3d-Position der gefundenen FlÀche.
rotation{w, x, y, z}Die lokale 3d-Ausrichtung der georteten FlÀche.
scaleNummerEin Skalierungsfaktor, der auf Objekte angewendet werden soll, die mit dieser FlÀche verbunden sind.
scaledWidthNummerUngefĂ€hre Breite des Kopfes in der Szene, multipliziert mit dem Maßstab.
scaledHeightNummerUngefĂ€hre Höhe des Kopfes in der Szene, multipliziert mit dem Maßstab.
scaledDepthNummerUngefĂ€hre Tiefe des Kopfes in der Szene, multipliziert mit dem Maßstab.

facelost: Wird ausgelöst, wenn ein Gesicht nicht mehr verfolgt wird.

facelost.detail : { id }

EigentumTypBeschreibung
idNummerEine numerische ID der gefundenen FlÀche.

mundgeöffnet: Wird ausgelöst, wenn sich der Mund eines verfolgten Gesichts öffnet.

mouthopened.detail : { id }

EigentumTypBeschreibung
idNummerEine numerische ID der gefundenen FlÀche.

mund geschlossen: Wird ausgelöst, wenn sich der Mund eines verfolgten Gesichts schließt.

mouthclosed.detail : { id }

EigentumTypBeschreibung
idNummerEine numerische ID der gefundenen FlÀche.

lefteyeopened: Wird ausgelöst, wenn sich das linke Auge eines verfolgten Gesichts öffnet.

lefteyeopened.detail : { id }

EigentumTypBeschreibung
idNummerEine numerische ID der gefundenen FlÀche.

lefteyeclosed: Wird ausgelöst, wenn sich das linke Auge eines verfolgten Gesichts schließt.

lefteyeclosed.detail : { id }

EigentumTypBeschreibung
idNummerEine numerische ID der gefundenen FlÀche.

righteyeopened: Wird ausgelöst, wenn sich das rechte Auge eines verfolgten Gesichts öffnet.

righteyeopened.detail : { id }

EigentumTypBeschreibung
idNummerEine numerische ID der gefundenen FlÀche.

righteyeclosed: Wird ausgelöst, wenn sich das rechte Auge eines verfolgten Gesichts schließt.

righteyeclosed.detail : { id }

EigentumTypBeschreibung
idNummerEine numerische ID der gefundenen FlÀche.

lefteyebrowraised: Wird ausgelöst, wenn die linke Augenbraue eines verfolgten Gesichts aus der Ausgangsposition, als das Gesicht gefunden wurde, angehoben wird.

lefteyebrowraised.detail : { id }

EigentumTypBeschreibung
idNummerEine numerische ID der gefundenen FlÀche.

lefteyebrowlowered: Wird ausgelöst, wenn die linke Augenbraue eines verfolgten Gesichts in ihre ursprĂŒngliche Position gesenkt wird, als das Gesicht gefunden wurde.

lefteyebrowlowered.detail : { id }

EigentumTypBeschreibung
idNummerEine numerische ID der gefundenen FlÀche.

righteyebrowraised: Wird ausgelöst, wenn die rechte Augenbraue eines verfolgten Gesichts aus der Position, in der das Gesicht gefunden wurde, angehoben wird.

righteyebrowraised.detail : { id }

EigentumTypBeschreibung
idNummerEine numerische ID der gefundenen FlÀche.

rechteAugenbrauegesenkt: Wird ausgelöst, wenn die rechte Augenbraue eines verfolgten Gesichts in ihre ursprĂŒngliche Position gesenkt wird, als das Gesicht gefunden wurde.

righteyebrowlowered.detail : { id }

EigentumTypBeschreibung
idNummerEine numerische ID der gefundenen FlÀche.

lefteyewinked: Wird ausgelöst, wenn sich das linke Auge eines verfolgten Gesichts innerhalb von 750 ms schließt und öffnet, wĂ€hrend das rechte Auge offen bleibt.

lefteyewinked.detail : { id }

EigentumTypBeschreibung
idNummerEine numerische ID der gefundenen FlÀche.

righteyewinked: Wird ausgelöst, wenn sich das rechte Auge eines verfolgten Gesichts innerhalb von 750 ms schließt und öffnet, wĂ€hrend das linke Auge offen bleibt.

righteyewinked.detail : { id }

EigentumTypBeschreibung
idNummerEine numerische ID der gefundenen FlÀche.

blinzeln: Wird ausgelöst, wenn die Augen eines verfolgten Gesichts blinzeln.

blinzelte.detail : { id }

EigentumTypBeschreibung
idNummerEine numerische ID der gefundenen FlÀche.

pupillendistanz: Wird ausgelöst, wenn der Abstand in Millimetern zwischen den Mittelpunkten der einzelnen Pupillen eines verfolgten Gesichts zum ersten Mal erkannt wird.

interpupillarydistance.detail : {id, interpupillaryDistance}

EigentumTypBeschreibung
idNummerEine numerische ID der gefundenen FlÀche.
interpupillaryDistanceNummerUngefÀhrer Abstand in Millimetern zwischen den Mittelpunkten der einzelnen Pupillen.

Beispiel - HinzufĂŒgen eines Pipeline-Moduls​

XR8.addCameraPipelineModule(XR8.FaceController.pipelineModule())