81 lines
2.3 KiB
C#
81 lines
2.3 KiB
C#
using Mediapipe.Tasks.Vision.FaceGeometry.Proto;
|
|
|
|
namespace Mediapipe.Extension;
|
|
|
|
public static class ProtoMessageClearExtension
|
|
{
|
|
public static void Clear(this ClassificationList classificationList)
|
|
{
|
|
classificationList.Classification.Clear();
|
|
}
|
|
|
|
public static void Clear(this Detection detection)
|
|
{
|
|
detection.Label.Clear();
|
|
detection.LabelId.Clear();
|
|
detection.Score.Clear();
|
|
detection.LocationData.Clear();
|
|
detection.ClearFeatureTag();
|
|
detection.ClearTrackId();
|
|
detection.ClearDetectionId();
|
|
detection.AssociatedDetections.Clear();
|
|
detection.DisplayName.Clear();
|
|
detection.ClearTimestampUsec();
|
|
}
|
|
|
|
public static void Clear(this LocationData locationData)
|
|
{
|
|
locationData.ClearFormat();
|
|
if (locationData.BoundingBox != null)
|
|
{
|
|
locationData.BoundingBox.ClearXmin();
|
|
locationData.BoundingBox.ClearYmin();
|
|
locationData.BoundingBox.ClearWidth();
|
|
locationData.BoundingBox.ClearHeight();
|
|
}
|
|
|
|
if (locationData.RelativeBoundingBox != null)
|
|
{
|
|
locationData.RelativeBoundingBox.ClearXmin();
|
|
locationData.RelativeBoundingBox.ClearYmin();
|
|
locationData.RelativeBoundingBox.ClearWidth();
|
|
locationData.RelativeBoundingBox.ClearHeight();
|
|
}
|
|
|
|
if (locationData.Mask != null)
|
|
{
|
|
locationData.Mask.ClearWidth();
|
|
locationData.Mask.ClearHeight();
|
|
locationData.Mask.Rasterization.Interval.Clear();
|
|
}
|
|
|
|
locationData.RelativeKeypoints.Clear();
|
|
}
|
|
|
|
public static void Clear(this NormalizedLandmarkList landmarkList)
|
|
{
|
|
landmarkList.Landmark.Clear();
|
|
}
|
|
|
|
public static void Clear(this FaceGeometry faceGeometry)
|
|
{
|
|
faceGeometry.Mesh?.Clear();
|
|
faceGeometry.PoseTransformMatrix?.Clear();
|
|
}
|
|
|
|
public static void Clear(this MatrixData matrixData)
|
|
{
|
|
matrixData.ClearRows();
|
|
matrixData.ClearCols();
|
|
matrixData.PackedData.Clear();
|
|
matrixData.ClearLayout();
|
|
}
|
|
|
|
public static void Clear(this Mesh3d mesh3d)
|
|
{
|
|
mesh3d.ClearVertexType();
|
|
mesh3d.ClearPrimitiveType();
|
|
mesh3d.VertexBuffer.Clear();
|
|
mesh3d.IndexBuffer.Clear();
|
|
}
|
|
} |