Как я могу передать все изображения из альбома «Все фотографии» в мою функцию?
Я хочу получить все изображения из фотогалереи, передать их в функцию обнаружения, которая классифицирует фотографию в одном из двух предопределенных классов.
Впоследствии я хочу создать два новых альбома классов и сохранить предсказанные результаты в уважаемом альбоме классов
func detect(image: CIImage)
{
// Load the ML model through its generated class
guard let model = try? VNCoreMLModel(for: ScreenshotClassifier_3().model) else {
fatalError("can't load ML model")
}
print(model)
let request = VNCoreMLRequest(model: model) { request, error in
guard let results = request.results as? [VNClassificationObservation],
let topResult = results.first
else {
fatalError("unexpected result type from VNCoreMLRequest")
}
if topResult.identifier.contains("Whatsapp") {
DispatchQueue.main.async {
self.navigationItem.title = "Whatsapp!"
self.navigationController?.navigationBar.barTintColor = UIColor.green
self.navigationController?.navigationBar.isTranslucent = false
}
}
else {
DispatchQueue.main.async {
self.navigationItem.title = "LinkedIn!"
self.navigationController?.navigationBar.barTintColor = UIColor.red
self.navigationController?.navigationBar.isTranslucent = false
}
}
}
let handler = VNImageRequestHandler(ciImage: image)
do {
try handler.perform([request])
}
catch {
print(error)
}
}
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
if let image = info[.originalImage] as? UIImage {
imageView.image = image
imagePicker.dismiss(animated: true, completion: nil)
guard let ciImage = CIImage(image: image) else {
fatalError("couldn't convert uiimage to CIImage")
}
detect(image: ciImage)
}
}
@IBAction func cameraTapped(_ sender: Any) {
imagePicker.sourceType = .photoLibrary
imagePicker.allowsEditing = false
present(imagePicker, animated: true, completion: nil)
}
}