Resimdeki metni algılamak için iOS 11'in vizyon çerçevesini kullanıyorum. Metinler başarıyla algılanıyor, ancak tespit edilen metni nasıl alabiliyoruz.iOS 11 Görsel çerçeve - Görüntüden metin çıkarımı
10
A
cevap
-4
Bu algılanan metnin İşte
üzerinde dikdörtgen kutu ile bindirme görüntüsüne dönecektir https://github.com/cyruslok/iOS11-Vision-Framework-Demo
o yararlıdır
// Text Detect
func textDetect(dectect_image:UIImage, display_image_view:UIImageView)->UIImage{
let handler:VNImageRequestHandler = VNImageRequestHandler.init(cgImage: (dectect_image.cgImage)!)
var result_img:UIImage = UIImage.init();
let request:VNDetectTextRectanglesRequest = VNDetectTextRectanglesRequest.init(completionHandler: { (request, error) in
if((error) != nil){
print("Got Error In Run Text Dectect Request");
}else{
result_img = self.drawRectangleForTextDectect(image: dectect_image,results: request.results as! Array<VNTextObservation>)
}
})
request.reportCharacterBoxes = true
do {
try handler.perform([request])
return result_img;
} catch {
return result_img;
}
}
func drawRectangleForTextDectect(image: UIImage, results:Array<VNTextObservation>) -> UIImage {
let renderer = UIGraphicsImageRenderer(size: image.size)
var t:CGAffineTransform = CGAffineTransform.identity;
t = t.scaledBy(x: image.size.width, y: -image.size.height);
t = t.translatedBy(x: 0, y: -1);
let img = renderer.image { ctx in
for item in results {
let TextObservation:VNTextObservation = item
ctx.cgContext.setFillColor(UIColor.clear.cgColor)
ctx.cgContext.setStrokeColor(UIColor.green.cgColor)
ctx.cgContext.setLineWidth(1)
ctx.cgContext.addRect(item.boundingBox.applying(t))
ctx.cgContext.drawPath(using: .fillStroke)
for item_2 in TextObservation.characterBoxes!{
let RectangleObservation:VNRectangleObservation = item_2
ctx.cgContext.setFillColor(UIColor.clear.cgColor)
ctx.cgContext.setStrokeColor(UIColor.red.cgColor)
ctx.cgContext.setLineWidth(1)
ctx.cgContext.addRect(RectangleObservation.boundingBox.applying(t))
ctx.cgContext.drawPath(using: .fillStroke)
}
}
}
return img
}
+2
Soruyu okudun mu? – Tech
0
bir dupe ama benzer Tam Umut dolu xcode projeyi olduğunu : Converting a Vision VNTextObservation to a String
CoreML veya başka bir kitaplık kullanmanız gerekir. oform OCR (SwiftOCR, vb.)
İlgili konular
- 1. ios'taki görüntüden metin alma (görüntü işleme)
- 2. Çerçeve içine çerçeve katıştır iOS
- 3. Python görsel metin editörü
- 4. iOS 11 Searchcontroller ekranında
- 5. Sosyal Çerçeve iOS 8 swift
- 6. JavaScriptCore çerçeve kullanılabilirliği iOS
- 7. iOS 11 NavigationBar'da Ara Çubuğu
- 8. AVPlayer, iOS 11'de çalışmıyor
- 9. iOS 11 prefersLargeTitles Garip Geçiş
- 10. Objective-C Tür Çıkarımı
- 11. Swift iOS Özel Çerçeve Uyuşmazlıkları
- 12. iOS Document Görsel Tarayıcı Resmi adı
- 13. RichTextBox bul ve metin görsel temel
- 14. Vision Framework iOS 11 için Barkod algılama
- 15. iOS 11 - akıllı teklifleri devre dışı bırakma
- 16. iOS 11 beta 4 presentRenderbuffer kilitlenme
- 17. ios 11 sms uygulama parametresi çalışmıyor
- 18. Phonegap Error XCode 9/iOS 11 Kullanılıyor
- 19. iOS 11'de UIDocumentMenuViewController işlevselliği nasıl edinilir?
- 20. DirectX 11'de metin nasıl çizilir?
- 21. Özel çerçeve iOS simülatörüne yüklenemedi (yanlış mimari)
- 22. iOS Autolayout - Çerçeve boyutu görünümünde ayarlanmadıDidLayoutSubviews
- 23. Caffe çerçeve XCode 6.2, iOS 8.3 çevreyi
- 24. Twitter'da Paylaşım Paylaşımı 11
- 25. iOS 8, iOS 9, iOS 10 ve iOS 11'deki bir UITabBar'ın yüksekliği nedir?
- 26. tam metin arama phoenix çerçeve için
- 27. Görüntüden piksel rengi al
- 28. iyileştirilmesi kopyalama Görüntüden bayt
- 29. Çekilebilir görüntüden URI al
- 30. Bildirim simgesi eksik 11
Şimdi CoreML'yi kullanmanız ve okunacak bölgeyi göndermeniz gerekiyor –
@Alex Zaten algılanan bölgeleri almak. Tespit edilen bölgeyi okumak için çözüm lazım. – Abhishek
Olası bir kopyası [VNTextObservation'ın bir String'e Dönüştürülmesi] (https://stackoverflow.com/questions/44533148/converting-a-vision-vntextobservation-to-a-string) –