-
-
Notifications
You must be signed in to change notification settings - Fork 477
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: implement HolisticLandmarker (#1315)
* build: import HolisticLandmarkerGraphOptions * fix: get face blendshapes when running on GPU * feat: include holistic_landmarker resources * feat: implement HolisticLandmarker
- Loading branch information
Showing
21 changed files
with
1,655 additions
and
52 deletions.
There are no files selected for viewing
7 changes: 7 additions & 0 deletions
7
...es/com.github.homuler.mediapipe/PackageResources/MediaPipe/holistic_landmarker.bytes.meta
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
248 changes: 248 additions & 0 deletions
248
...ntime/Scripts/Protobuf/Tasks/Vision/HandLandmarker/Proto/HandRoiRefinementGraphOptions.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,248 @@ | ||
// <auto-generated> | ||
// Generated by the protocol buffer compiler. DO NOT EDIT! | ||
// source: mediapipe/tasks/cc/vision/hand_landmarker/proto/hand_roi_refinement_graph_options.proto | ||
// </auto-generated> | ||
#pragma warning disable 1591, 0612, 3021 | ||
#region Designer generated code | ||
|
||
using pb = global::Google.Protobuf; | ||
using pbc = global::Google.Protobuf.Collections; | ||
using pbr = global::Google.Protobuf.Reflection; | ||
using scg = global::System.Collections.Generic; | ||
namespace Mediapipe.Tasks.Vision.HandLandmarker.Proto { | ||
|
||
/// <summary>Holder for reflection information generated from mediapipe/tasks/cc/vision/hand_landmarker/proto/hand_roi_refinement_graph_options.proto</summary> | ||
public static partial class HandRoiRefinementGraphOptionsReflection { | ||
|
||
#region Descriptor | ||
/// <summary>File descriptor for mediapipe/tasks/cc/vision/hand_landmarker/proto/hand_roi_refinement_graph_options.proto</summary> | ||
public static pbr::FileDescriptor Descriptor { | ||
get { return descriptor; } | ||
} | ||
private static pbr::FileDescriptor descriptor; | ||
|
||
static HandRoiRefinementGraphOptionsReflection() { | ||
byte[] descriptorData = global::System.Convert.FromBase64String( | ||
string.Concat( | ||
"CldtZWRpYXBpcGUvdGFza3MvY2MvdmlzaW9uL2hhbmRfbGFuZG1hcmtlci9w", | ||
"cm90by9oYW5kX3JvaV9yZWZpbmVtZW50X2dyYXBoX29wdGlvbnMucHJvdG8S", | ||
"LG1lZGlhcGlwZS50YXNrcy52aXNpb24uaGFuZF9sYW5kbWFya2VyLnByb3Rv", | ||
"GjBtZWRpYXBpcGUvdGFza3MvY2MvY29yZS9wcm90by9iYXNlX29wdGlvbnMu", | ||
"cHJvdG8iXgodSGFuZFJvaVJlZmluZW1lbnRHcmFwaE9wdGlvbnMSPQoMYmFz", | ||
"ZV9vcHRpb25zGAEgASgLMicubWVkaWFwaXBlLnRhc2tzLmNvcmUucHJvdG8u", | ||
"QmFzZU9wdGlvbnNCXAo2Y29tLmdvb2dsZS5tZWRpYXBpcGUudGFza3Mudmlz", | ||
"aW9uLmhhbmRsYW5kbWFya2VyLnByb3RvQiJIYW5kUm9pUmVmaW5lbWVudEdy", | ||
"YXBoT3B0aW9uc1Byb3RvYgZwcm90bzM=")); | ||
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData, | ||
new pbr::FileDescriptor[] { global::Mediapipe.Tasks.Core.Proto.BaseOptionsReflection.Descriptor, }, | ||
new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] { | ||
new pbr::GeneratedClrTypeInfo(typeof(global::Mediapipe.Tasks.Vision.HandLandmarker.Proto.HandRoiRefinementGraphOptions), global::Mediapipe.Tasks.Vision.HandLandmarker.Proto.HandRoiRefinementGraphOptions.Parser, new[]{ "BaseOptions" }, null, null, null, null) | ||
})); | ||
} | ||
#endregion | ||
|
||
} | ||
#region Messages | ||
public sealed partial class HandRoiRefinementGraphOptions : pb::IMessage<HandRoiRefinementGraphOptions> | ||
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE | ||
, pb::IBufferMessage | ||
#endif | ||
{ | ||
private static readonly pb::MessageParser<HandRoiRefinementGraphOptions> _parser = new pb::MessageParser<HandRoiRefinementGraphOptions>(() => new HandRoiRefinementGraphOptions()); | ||
private pb::UnknownFieldSet _unknownFields; | ||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] | ||
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] | ||
public static pb::MessageParser<HandRoiRefinementGraphOptions> Parser { get { return _parser; } } | ||
|
||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] | ||
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] | ||
public static pbr::MessageDescriptor Descriptor { | ||
get { return global::Mediapipe.Tasks.Vision.HandLandmarker.Proto.HandRoiRefinementGraphOptionsReflection.Descriptor.MessageTypes[0]; } | ||
} | ||
|
||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] | ||
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] | ||
pbr::MessageDescriptor pb::IMessage.Descriptor { | ||
get { return Descriptor; } | ||
} | ||
|
||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] | ||
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] | ||
public HandRoiRefinementGraphOptions() { | ||
OnConstruction(); | ||
} | ||
|
||
partial void OnConstruction(); | ||
|
||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] | ||
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] | ||
public HandRoiRefinementGraphOptions(HandRoiRefinementGraphOptions other) : this() { | ||
baseOptions_ = other.baseOptions_ != null ? other.baseOptions_.Clone() : null; | ||
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); | ||
} | ||
|
||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] | ||
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] | ||
public HandRoiRefinementGraphOptions Clone() { | ||
return new HandRoiRefinementGraphOptions(this); | ||
} | ||
|
||
/// <summary>Field number for the "base_options" field.</summary> | ||
public const int BaseOptionsFieldNumber = 1; | ||
private global::Mediapipe.Tasks.Core.Proto.BaseOptions baseOptions_; | ||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] | ||
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] | ||
public global::Mediapipe.Tasks.Core.Proto.BaseOptions BaseOptions { | ||
get { return baseOptions_; } | ||
set { | ||
baseOptions_ = value; | ||
} | ||
} | ||
|
||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] | ||
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] | ||
public override bool Equals(object other) { | ||
return Equals(other as HandRoiRefinementGraphOptions); | ||
} | ||
|
||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] | ||
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] | ||
public bool Equals(HandRoiRefinementGraphOptions other) { | ||
if (ReferenceEquals(other, null)) { | ||
return false; | ||
} | ||
if (ReferenceEquals(other, this)) { | ||
return true; | ||
} | ||
if (!object.Equals(BaseOptions, other.BaseOptions)) return false; | ||
return Equals(_unknownFields, other._unknownFields); | ||
} | ||
|
||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] | ||
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] | ||
public override int GetHashCode() { | ||
int hash = 1; | ||
if (baseOptions_ != null) hash ^= BaseOptions.GetHashCode(); | ||
if (_unknownFields != null) { | ||
hash ^= _unknownFields.GetHashCode(); | ||
} | ||
return hash; | ||
} | ||
|
||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] | ||
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] | ||
public override string ToString() { | ||
return pb::JsonFormatter.ToDiagnosticString(this); | ||
} | ||
|
||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] | ||
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] | ||
public void WriteTo(pb::CodedOutputStream output) { | ||
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE | ||
output.WriteRawMessage(this); | ||
#else | ||
if (baseOptions_ != null) { | ||
output.WriteRawTag(10); | ||
output.WriteMessage(BaseOptions); | ||
} | ||
if (_unknownFields != null) { | ||
_unknownFields.WriteTo(output); | ||
} | ||
#endif | ||
} | ||
|
||
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE | ||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] | ||
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] | ||
void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { | ||
if (baseOptions_ != null) { | ||
output.WriteRawTag(10); | ||
output.WriteMessage(BaseOptions); | ||
} | ||
if (_unknownFields != null) { | ||
_unknownFields.WriteTo(ref output); | ||
} | ||
} | ||
#endif | ||
|
||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] | ||
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] | ||
public int CalculateSize() { | ||
int size = 0; | ||
if (baseOptions_ != null) { | ||
size += 1 + pb::CodedOutputStream.ComputeMessageSize(BaseOptions); | ||
} | ||
if (_unknownFields != null) { | ||
size += _unknownFields.CalculateSize(); | ||
} | ||
return size; | ||
} | ||
|
||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] | ||
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] | ||
public void MergeFrom(HandRoiRefinementGraphOptions other) { | ||
if (other == null) { | ||
return; | ||
} | ||
if (other.baseOptions_ != null) { | ||
if (baseOptions_ == null) { | ||
BaseOptions = new global::Mediapipe.Tasks.Core.Proto.BaseOptions(); | ||
} | ||
BaseOptions.MergeFrom(other.BaseOptions); | ||
} | ||
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); | ||
} | ||
|
||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] | ||
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] | ||
public void MergeFrom(pb::CodedInputStream input) { | ||
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE | ||
input.ReadRawMessage(this); | ||
#else | ||
uint tag; | ||
while ((tag = input.ReadTag()) != 0) { | ||
switch(tag) { | ||
default: | ||
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); | ||
break; | ||
case 10: { | ||
if (baseOptions_ == null) { | ||
BaseOptions = new global::Mediapipe.Tasks.Core.Proto.BaseOptions(); | ||
} | ||
input.ReadMessage(BaseOptions); | ||
break; | ||
} | ||
} | ||
} | ||
#endif | ||
} | ||
|
||
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE | ||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] | ||
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] | ||
void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { | ||
uint tag; | ||
while ((tag = input.ReadTag()) != 0) { | ||
switch(tag) { | ||
default: | ||
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); | ||
break; | ||
case 10: { | ||
if (baseOptions_ == null) { | ||
BaseOptions = new global::Mediapipe.Tasks.Core.Proto.BaseOptions(); | ||
} | ||
input.ReadMessage(BaseOptions); | ||
break; | ||
} | ||
} | ||
} | ||
} | ||
#endif | ||
|
||
} | ||
|
||
#endregion | ||
|
||
} | ||
|
||
#endregion Designer generated code |
2 changes: 2 additions & 0 deletions
2
.../Scripts/Protobuf/Tasks/Vision/HandLandmarker/Proto/HandRoiRefinementGraphOptions.cs.meta
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
8 changes: 8 additions & 0 deletions
8
...om.github.homuler.mediapipe/Runtime/Scripts/Protobuf/Tasks/Vision/HolisticLandmarker.meta
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
8 changes: 8 additions & 0 deletions
8
...hub.homuler.mediapipe/Runtime/Scripts/Protobuf/Tasks/Vision/HolisticLandmarker/Proto.meta
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Oops, something went wrong.