26 votos

¿OCR integrado en MacOS?

Recientemente he descubierto en mi Mac que puedo resaltar fácilmente el texto en una imagen que antes no era posible.

¿Existe también una opción CLI incorporada o una opción AppleScript para dirigirse al programa OCR con la que pueda conseguir los mismos resultados que tesseract?

Gracias

20voto

benwiggy Puntos 8

Shortcuts.app tiene una acción "Extraer texto de la imagen".

enter image description here

También hay un comando de shell shortcuts para ejecutar un acceso directo.

5voto

MattW. Puntos 107

Este es el núcleo de una sencilla herramienta cli para extraer texto de una imagen:

 let img = NSImage(byReferencing: url)
    guard let imgRef = img.cgImage(forProposedRect: nil, context: nil, hints: nil) else {
        fputs("Error: failed to convert NSImage to CGImage for '\(url)'\n", stderr)
        return 1
    }

    let request = VNRecognizeTextRequest { (request, error) in
        let observations = request.results as? [VNRecognizedTextObservation] ?? []
        let obs : [String] = observations.map { $0.topCandidates(1).first?.string ?? ""}
        try? obs.joined(separator: "\n").write(to: url.appendingPathExtension("md"), atomically: true, encoding: String.Encoding.utf8)

        fputs("got page obs is \(obs)", stderr)
    }
    request.recognitionLevel = VNRequestTextRecognitionLevel.accurate // or .fast
    request.usesLanguageCorrection = true
    request.revision = VNRecognizeTextRequestRevision2
    request.recognitionLanguages = ["de"]
    request.customWords = ["more", "Worte", "Wort"]

    try? VNImageRequestHandler(cgImage: imgRef, options: [:]).perform([request])

de este proyecto de trabajo completo

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X