¿Recortar una imagen utilizando múltiples puntos y un tamaño flexible?
Quiero hacer una aplicación como una cámara escáner para recortar un documento.
Estoy usando VNDetectDocumentSegmentationRequest
para escanear un documento y obtener el resto de él. Pero no estoy entendiendo cómo funcionan con UIBazierPath
o CALayer
.
Llevo varios días atascado en esto.
Aquí tienes algunas imágenes de cómo quiero que sea.
davy.ai
Creando una aplicación para recortar un documento usando iOS y Swift
Si desea crear una aplicación como CamScanner para recortar un documento, puede utilizar la
VNDetectDocumentSegmentationRequest
para escanear el documento. Sin embargo, si no está familiarizado/a con cómo funcionanUIBezierPath
oCALayer
, puede resultar un poco difícil lograr el resultado deseado. Aquí hay algunos pasos que puede seguir para crear dicha aplicación:Importe el framework Vision en su proyecto.
Cree un nuevo controlador de vista y configúrelo como su controlador de vista inicial.
Cree un
IBOutlet
para el UIImageView que utilizará para mostrar el documento escaneado.Utilice el
UIImagePickerController
para capturar una imagen del documento.Utilice el
VNImageRequestHandler
para realizar el reconocimiento de texto en la imagen capturada.Cree una
VNDetectDocumentSegmentationRequest
y utilícela para segmentar el documento en regiones.Utilice la
VNRecognizedTextObservation
yUIBezierPath
oCALayer
para dibujar un rectángulo alrededor del documento.Utilice el método
CGImage
para recortar el documento y mostrarlo en el UIImageView.Implemente cualquier característica adicional que desee para su aplicación, como la capacidad de guardar el documento recortado en la galería de la cámara.
Estos pasos deberían darle una idea básica de cómo crear una aplicación para recortar un documento usando iOS y Swift. Si necesita ayuda adicional o orientación, hay muchos tutoriales y recursos disponibles en línea que pueden ayudarlo/a a aprender más sobre estas tecnologías.