如何解决UIImage 类型的值没有成员 cgImageOrientation
我是新的 coreml 并且我正在阅读一本书我遇到了一个代码片段,当我尝试运行它时出现上述错误,我用谷歌搜索但没有运气, 这是我的代码
import UIKit
import Vision
extension UIImage {
func detectFaces(completion:@escaping ([VNFaceObservation]?)->()){
guard let image = self.cgImage else {
completion(nil)
return
}
let request = VNDetectFaceRectanglesRequest()
DispatchQueue.global().async {
let handler = VNImageRequestHandler(cgImage: image,orientation: self.cgImageOrientation)
//above error here I think cgImageOrientation is no longer available but what's the solution anyways
}
}
}
这里我使用的是 swiftUI 并且生命周期方法也被选为 swiftui,书名是orielly的《实用人工智能与swift》 https://i.stack.imgur.com/He8ad.png
解决方法
您需要继续学习本教程,然后才能编译它。本书的下一部分将讨论创建 Views.swift
,该部分的第 8 步包括此扩展:
extension UIImage {
func fixOrientation() -> UIImage? {
UIGraphicsBeginImageContext(self.size)
self.draw(at: .zero)
let newImage = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
return newImage
}
var cgImageOrientation: CGImagePropertyOrientation {
switch self.imageOrientation {
case .up: return .up
case .down: return .down
case .left: return .left
case .right: return .right
case .upMirrored: return .upMirrored
case .downMirrored: return .downMirrored
case .leftMirrored: return .leftMirrored
case .rightMirrored: return .rightMirrored
}
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。