【发布时间】:2020-10-26 10:21:26
【问题描述】:
我正在尝试使用 coreML 对手绘图像进行分类。我的模型能够对从图库中获取的图像进行分类。但是当我通过使用“UIGraphicsGetImageFromCurrentImageContext”拍摄的手绘图像时,我的模型无法分类。请谁帮我找出错误?
UIGraphicsBeginImageContext(bottomImageView.frame.size)
bottomImageView.image?.draw(in: view.bounds, blendMode: .normal, alpha: 1.0)
bottomImageView.image = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
我正在使用上面的代码来获取在当前上下文中绘制的图像。
let image = bottomImageView.image
if let reqImage = image.cgImage {
do {
let model1 = try VNCoreMLModel(for: ImageClassifier().model)
let request = VNCoreMLRequest(model: model1, completionHandler: myResultsMethod)
let handler = VNImageRequestHandler(cgImage: reqImage)
try handler.perform([request])
} catch {
print("error")
}
}
func myResultsMethod(request: VNRequest, error: Error?) {
guard let results = request.results as? [VNClassificationObservation]
else { fatalError("vision is not able to process the image") }
for classification in results {
if classification.confidence > 0.9 {
classifier.text = "I think this is a \(classification.identifier)."
break
}
else {
classifier.text = "I am sorry, I can't predict. train me more."
}
}
}
我正在使用此代码通过视觉获取分类器结果。
【问题讨论】:
标签: swift core-image coreml