Распознавание AWS для сравнения лица с помощью IOS Swift - PullRequest
0 голосов
/ 28 декабря 2018

У меня проблема с логикой, когда я пытаюсь вызвать API AWS Recognition Compare Faces, используя IOS Swift.Для Swift еще нет документации (на момент публикации), но, возможно, я правильно настроил запрос, просто не вызывал его правильно, чтобы получить объект ответа и подтвердить результаты.

Есть совет?

let sourceImage = AWSRekognitionImage()
let sourceImageS3Object = AWSRekognitionS3Object()
sourceImageS3Object?.bucket = "face-badges"
sourceImageS3Object?.name = "me.jpg"
sourceImage?.s3Object = sourceImageS3Object

let targetImage = AWSRekognitionImage()
let targetImageS3Object = AWSRekognitionS3Object()
targetImageS3Object?.bucket = "face-badges"
targetImageS3Object?.name = "me2.jpg"
targetImage?.s3Object = targetImageS3Object

let request = AWSRekognitionCompareFacesRequest()
request?.similarityThreshold = 90
request?.sourceImage = sourceImage
request?.targetImage = targetImage

let key = "testCompareFaces"
let credentialsProvider = AWSCognitoCredentialsProvider(regionType:.USEast1,
                                                        identityPoolId:"xxxxx")
let configuration = AWSServiceConfiguration(region:.USEast1, credentialsProvider:credentialsProvider)

AWSRekognition.register(with: configuration!, forKey: key)
AWSRekognition(forKey: key).compareFaces(AWSRekognitionCompareFacesRequest()).continueWith(block: {(_ task: AWSTask) -> Any in
    print("completed")

    return true;

}).waitUntilFinished()

1 Ответ

0 голосов
/ 08 января 2019

Следующий пример теста в SDK продемонстрировал, как сравнивать две грани в ObjC.

https://github.com/aws/aws-sdk-ios/blob/master/AWSRekognitionUnitTests/AWSGeneralRekognitionTests.m#L60

Соответствующий фрагмент в Swift будет выглядеть примерно так:

let key = "testCompareFaces"
let configuration = AWSServiceConfiguration(region: AWSRegionUSEast2, credentialsProvider: nil)
AWSRekognition.register(with: configuration, forKey: key)
AWSRekognition(for: key).compareFaces(AWSRekognitionCompareFacesRequest()).continue(withBlock: {(_ task: AWSTask) -> Any in
    print("completed")

Надеюсь, это поможет!

...