-
Notifications
You must be signed in to change notification settings - Fork 5.2k
/
landmarks_refinement_calculator.proto
71 lines (60 loc) · 2.55 KB
/
landmarks_refinement_calculator.proto
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
// Copyright 2021 The MediaPipe Authors.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
syntax = "proto2";
package mediapipe;
import "mediapipe/framework/calculator.proto";
message LandmarksRefinementCalculatorOptions {
extend CalculatorOptions {
optional LandmarksRefinementCalculatorOptions ext = 381914658;
}
// Do nothing and keep those Z that are already present in the resulting set
// of landmarks.
message ZRefinementNone {}
// Simply copy Z values from the given set of landmarks to the resulting set
// of landmarks.
message ZRefinementCopy {}
// Calculate average of the specified set of landmarks in the resulting set
// and use it as Z for all given landmarks when assigning their values to the
// resulting set of landmarks.
message ZRefinementAssignAverage {
// Indexes of the resulting landmarks to use for average. Should be non
// empty.
repeated int32 indexes_for_average = 1;
}
// Specifies the set of instructions on assigning z value from the given set
// of landmarks to the resulting set of landmarks.
message ZRefinement {
// Exactly one Z refinement option should be specified.
oneof z_refinement_options {
ZRefinementNone none = 1;
ZRefinementCopy copy = 2;
ZRefinementAssignAverage assign_average = 3;
}
}
// Specifies the set of instructions of assigning values to the resulting set
// of landmarks.
message Refinement {
// Maps indexes of the given set of landmarks to indexes of the resulting
// set of landmarks. Should be non empty and contain the same amount of
// indexes as landmarks in the corresponding input stream.
repeated int32 indexes_mapping = 1;
// Z refinement instructions.
optional ZRefinement z_refinement = 2;
}
// Refinement instructions for every landmarks input stream. Applied in the
// same order as defined. Should be the same amount of refinements as landmark
// input streams in the calculator. Union of index mappings should start with
// 0 and cover a contineous range.
repeated Refinement refinement = 1;
}