Swift软件包 · v0.1.0
KLSubjectVision
从CGImage生成正方形主体或场景缩略图。
KLSubjectVision用于生成正方形缩略图。`.subject` 通过Apple Vision提取前景,并将完整主体按比例放入透明画布。提取失败时改用原图。`.room` 不提取主体,直接裁切场景图片。
功能
- Vision前景实例蒙版
- 可设置inset的主体等比缩放
- `.room` 与 `.fallback` 使用居中填充
- 测试时可以替换 `ForegroundExtractor`
不包含的功能
软件包只处理 `CGImage`。图片加载、方向校正、任务调度、取消、编码、存储和缓存由接入应用负责。
通过SwiftPM安装
Package.swiftSwift
.package(url: "https://github.com/KoenLee1023/KLSubjectVision.git", from: "0.1.0")使用方法
接入示例Swift
let output = SubjectThumbnailProcessor().process(
source,
request: .subject(pixelSize: 512, inset: 28)
)
guard let output else { return }
display(output.image, path: output.kind)API文档
打开完整API文档。SubjectThumbnailProcessor同步处理且不包含共享可变状态。测试时可以替换 `ForegroundExtractor`。
SubjectThumbnailRequest`.subject(pixelSize:inset:)` 或 `.room(pixelSize:)`。
SubjectThumbnailOutput返回请求尺寸的正方形 `CGImage` 与处理路径。
示例App
Subject Studio
Vision前景实例蒙版 · 可设置inset的主体等比缩放
Thumbnail Matrix
`.room` 与 `.fallback` 使用居中填充 · 测试时可以替换 `ForegroundExtractor`