in SAM2-Demo/ContentView.swift [336:358]
func exportSegmentations(_ segmentations: [SAMSegmentation], to directory: URL) {
let fileManager = FileManager.default
do {
try fileManager.createDirectory(at: directory, withIntermediateDirectories: true, attributes: nil)
for (index, segmentation) in segmentations.enumerated() {
let filename = "segmentation_\(index + 1).png"
let fileURL = directory.appendingPathComponent(filename)
if let destination = CGImageDestinationCreateWithURL(fileURL as CFURL, UTType.png.identifier as CFString, 1, nil) {
CGImageDestinationAddImage(destination, segmentation.cgImage, nil)
if CGImageDestinationFinalize(destination) {
print("Saved segmentation \(index + 1) to \(fileURL.path)")
} else {
print("Failed to save segmentation \(index + 1)")
}
}
}
} catch {
print("Error creating directory: \(error.localizedDescription)")
}
}