#swift #iphone #ios15 #visionkit #ios-vision
Вопрос:
Я использую VNRecognizeTextRequest
via VNImageRequestHandler
со следующими настройками:
request.recognitionLevel = .accurate
request.usesLanguageCorrection = false
request.recognitionLanguages = ["en-US", "de-DE"]
Я использую захват в реальном времени AVFoundation
, затем конвертирую CMSampleBuffer
CVPixelBuffer
и отправляю его VNImageRequestHandler
.
В основном код взят из образца Apple: https://developer.apple.com/documentation/vision/reading_phone_numbers_in_real_time
Дело в том, что он хорошо работал до появления iOS 15. Затем он перестал распознавать текст со следующими ошибками:
Could not determine an appropriate width index for aspect ratio 0.0062
Could not determine an appropriate width index for aspect ratio 0.0078
Could not determine an appropriate width index for aspect ratio 0.0089
...
В общем, я смог частично исправить это, изменив recognitionLevel
с .accurate
на .fast
. Но я больше предпочитаю первый, так как он дает лучшие результаты и иногда .fast
распознает только отдельные символы из слов, например, если есть число с пробелами, как "7 2 5 6"
он может распознать только 7 или 2 и так далее.
Заранее спасибо за предложения.