From bd417bfd463d2da9cae0d9f9f7d29dd9ef4fabe6 Mon Sep 17 00:00:00 2001 From: "EunJi.Shin" Date: Wed, 3 Apr 2024 20:07:29 +0900 Subject: [PATCH] Fix : multiple face landmark issue (#1175) Update FaceLandmarkListWithIrisAnnotation.cs --- .../FaceLandmarkListWithIrisAnnotation.cs | 32 +++++++++++++------ 1 file changed, 22 insertions(+), 10 deletions(-) diff --git a/Packages/com.github.homuler.mediapipe/Runtime/Scripts/Unity/Annotation/FaceLandmarkListWithIrisAnnotation.cs b/Packages/com.github.homuler.mediapipe/Runtime/Scripts/Unity/Annotation/FaceLandmarkListWithIrisAnnotation.cs index e3b2e4d15..288ed2fce 100644 --- a/Packages/com.github.homuler.mediapipe/Runtime/Scripts/Unity/Annotation/FaceLandmarkListWithIrisAnnotation.cs +++ b/Packages/com.github.homuler.mediapipe/Runtime/Scripts/Unity/Annotation/FaceLandmarkListWithIrisAnnotation.cs @@ -92,28 +92,40 @@ public void SetIrisCircleWidth(float width) public void Draw(IReadOnlyList target, bool visualizeZ = false, int circleVertices = 128) { - var (faceLandmarks, leftLandmarks, rightLandmarks) = PartitionLandmarkList(target); - DrawFaceLandmarkList(faceLandmarks, visualizeZ); - DrawLeftIrisLandmarkList(leftLandmarks, visualizeZ, circleVertices); - DrawRightIrisLandmarkList(rightLandmarks, visualizeZ, circleVertices); + if (ActivateFor(target)) + { + var (faceLandmarks, leftLandmarks, rightLandmarks) = PartitionLandmarkList(target); + DrawFaceLandmarkList(faceLandmarks, visualizeZ); + DrawLeftIrisLandmarkList(leftLandmarks, visualizeZ, circleVertices); + DrawRightIrisLandmarkList(rightLandmarks, visualizeZ, circleVertices); + } } public void Draw(NormalizedLandmarkList target, bool visualizeZ = false, int circleVertices = 128) { - Draw(target.Landmark, visualizeZ, circleVertices); + if (ActivateFor(target)) + { + Draw(target.Landmark, visualizeZ, circleVertices); + } } public void Draw(IReadOnlyList target, bool visualizeZ = false, int circleVertices = 128) { - var (faceLandmarks, leftLandmarks, rightLandmarks) = PartitionLandmarkList(target); - DrawFaceLandmarkList(faceLandmarks, visualizeZ); - DrawLeftIrisLandmarkList(leftLandmarks, visualizeZ, circleVertices); - DrawRightIrisLandmarkList(rightLandmarks, visualizeZ, circleVertices); + if (ActivateFor(target)) + { + var (faceLandmarks, leftLandmarks, rightLandmarks) = PartitionLandmarkList(target); + DrawFaceLandmarkList(faceLandmarks, visualizeZ); + DrawLeftIrisLandmarkList(leftLandmarks, visualizeZ, circleVertices); + DrawRightIrisLandmarkList(rightLandmarks, visualizeZ, circleVertices); + } } public void Draw(mptcc.NormalizedLandmarks target, bool visualizeZ = false, int circleVertices = 128) { - Draw(target.landmarks, visualizeZ, circleVertices); + if (ActivateFor(target)) + { + Draw(target.landmarks, visualizeZ, circleVertices); + } } private void DrawFaceLandmarkList(IReadOnlyList target, bool visualizeZ = false)