Fixed issues in MPPObjectDetector
This commit is contained in:
parent
11413f0acd
commit
1c0e17ea17
|
@ -25,6 +25,7 @@
|
|||
namespace {
|
||||
using ::mediapipe::NormalizedRect;
|
||||
using ::mediapipe::Packet;
|
||||
using ::mediapipe::Timestamp;
|
||||
using ::mediapipe::tasks::core::PacketMap;
|
||||
using ::mediapipe::tasks::core::PacketsCallback;
|
||||
} // namespace
|
||||
|
@ -80,13 +81,22 @@ static NSString *const kTaskGraphName = @"mediapipe.tasks.vision.ObjectDetectorG
|
|||
if (options.completion) {
|
||||
packetsCallback = [=](absl::StatusOr<PacketMap> status_or_packets) {
|
||||
NSError *callbackError = nil;
|
||||
MPPObjectDetectionResult *result;
|
||||
if ([MPPCommonUtils checkCppError:status_or_packets.status() toError:&callbackError]) {
|
||||
result = [MPPObjectDetectionResult
|
||||
if (![MPPCommonUtils checkCppError:status_or_packets.status() toError:&callbackError]) {
|
||||
options.completion(nil, Timestamp::Unset().Value(), callbackError);
|
||||
return;
|
||||
}
|
||||
|
||||
PacketMap &outputPacketMap = status_or_packets.value();
|
||||
if (outputPacketMap[kImageOutStreamName.cppString].IsEmpty()) {
|
||||
return;
|
||||
}
|
||||
|
||||
MPPObjectDetectionResult *result = [MPPObjectDetectionResult
|
||||
objectDetectionResultWithDetectionsPacket:status_or_packets.value()
|
||||
[kDetectionsStreamName.cppString]];
|
||||
}
|
||||
options.completion(result, callbackError);
|
||||
|
||||
options.completion(result, outputPacketMap[kImageOutStreamName.cppString].Timestamp().Value() /
|
||||
kMicroSecondsPerMilliSecond, callbackError);
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -111,7 +121,7 @@ static NSString *const kTaskGraphName = @"mediapipe.tasks.vision.ObjectDetectorG
|
|||
return [self initWithOptions:options error:error];
|
||||
}
|
||||
|
||||
- (nullable MPPObjectDetectionResult *)detectINImage:(MPPImage *)image
|
||||
- (nullable MPPObjectDetectionResult *)detectInImage:(MPPImage *)image
|
||||
regionOfInterest:(CGRect)roi
|
||||
error:(NSError **)error {
|
||||
std::optional<NormalizedRect> rect =
|
||||
|
|
|
@ -18,6 +18,8 @@
|
|||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
static const int kMicroSecondsPerMilliSecond = 1000;
|
||||
|
||||
@interface MPPObjectDetectionResult (Helpers)
|
||||
|
||||
/**
|
||||
|
|
|
@ -16,8 +16,6 @@
|
|||
|
||||
#import "mediapipe/tasks/ios/components/containers/utils/sources/MPPDetection+Helpers.h"
|
||||
|
||||
static const int kMicroSecondsPerMilliSecond = 1000;
|
||||
|
||||
namespace {
|
||||
using DetectionProto = ::mediapipe::Detection;
|
||||
using ::mediapipe::Packet;
|
||||
|
|
Loading…
Reference in New Issue
Block a user