Added iOS text classifier result helpers
This commit is contained in:
		
							parent
							
								
									54161cc1ab
								
							
						
					
					
						commit
						a0220de233
					
				| 
						 | 
					@ -29,3 +29,13 @@ objc_library(
 | 
				
			||||||
    ],
 | 
					    ],
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					objc_library(
 | 
				
			||||||
 | 
					    name = "MPPTextClassifierResultHelpers",
 | 
				
			||||||
 | 
					    srcs = ["sources/MPPTextClassifierResult+Helpers.mm"],
 | 
				
			||||||
 | 
					    hdrs = ["sources/MPPTextClassifierResult+Helpers.h"],
 | 
				
			||||||
 | 
					    deps = [
 | 
				
			||||||
 | 
					        "//mediapipe/tasks/ios/text/text_classifier:MPPTextClassifierResult",
 | 
				
			||||||
 | 
					        "//mediapipe/tasks/ios/components/containers/utils:MPPClassificationResultHelpers",
 | 
				
			||||||
 | 
					        "//mediapipe/framework:packet",
 | 
				
			||||||
 | 
					    ],
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,28 @@
 | 
				
			||||||
 | 
					// Copyright 2023 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.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#import "mediapipe/tasks/ios/text/text_classifier/sources/MPPTextClassifierResult.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include "mediapipe/framework/packet.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					NS_ASSUME_NONNULL_BEGIN
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@interface MPPTextClassifierResult (Helpers)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					+ (MPPTextClassifierResult *)textClassifierResultWithClassificationsPacket:
 | 
				
			||||||
 | 
					    (const mediapipe::Packet &)packet;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					NS_ASSUME_NONNULL_END
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,43 @@
 | 
				
			||||||
 | 
					// Copyright 2023 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.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#import "mediapipe/tasks/ios/text/text_classifier/utils/sources/MPPTextClassifierResult+Helpers.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#import "mediapipe/tasks/ios/components/containers/utils/sources/MPPClassificationResult+Helpers.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include "mediapipe/tasks/cc/components/containers/proto/classifications.pb.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static const int kMicroSecondsPerMilliSecond = 1000;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					namespace {
 | 
				
			||||||
 | 
					using ClassificationResultProto =
 | 
				
			||||||
 | 
					    ::mediapipe::tasks::components::containers::proto::ClassificationResult;
 | 
				
			||||||
 | 
					using ::mediapipe::Packet;
 | 
				
			||||||
 | 
					}  // namespace
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#define int kMicroSecondsPerMilliSecond = 1000;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@implementation MPPTextClassifierResult (Helpers)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					+ (MPPTextClassifierResult *)textClassifierResultWithClassificationsPacket:(const Packet &)packet {
 | 
				
			||||||
 | 
					  MPPClassificationResult *classificationResult = [MPPClassificationResult
 | 
				
			||||||
 | 
					      classificationResultWithProto:packet.Get<ClassificationResultProto>()];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  return [[MPPTextClassifierResult alloc]
 | 
				
			||||||
 | 
					      initWithClassificationResult:classificationResult
 | 
				
			||||||
 | 
					                       timestampMs:(NSInteger)(packet.Timestamp().Value() /
 | 
				
			||||||
 | 
					                                               kMicroSecondsPerMilliSecond)];
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@end
 | 
				
			||||||
		Loading…
	
		Reference in New Issue
	
	Block a user