在 Mac 中使用照片,用户可以在照片中标记人物。然后,这些数据会同步到云端,他们可以在云端在 iOS 上的“照片”中进行面部搜索。元数据的类型似乎是“人脸”。是否有可能获得与其中一张面孔相关的所有资产?我想抓取其中有某个人的所有图像。你可以在 iOS 中的照片搜索中做到这一点,所以我希望它也对其他开发者开放。
有没有人有任何想法?
提前致谢。
Apple 发布了一个用于访问 Apple 照片的 SDK,称为 Photo Kit。在文档中,您将找到对照片应用程序和照片云的 API 访问。但是,如果您正在寻找一种 HTTP API,我认为没有公开宣布过。
如果您只需要访问照片 MacOS 应用程序上的数据,我建议您深入研究位于照片库数据库目录中的 SQLite photos.db。
/Users/[yourUserName]/Pictures/Photos Library.photoslibrary/database/photos.db
这个周末我正在做一个需要类似面部数据的项目,并将记录我的进度。这是一个示例 SQLite 查询,您可以使用它来获取所有面孔、照片和相应的人:
SELECT *, RKFace.modelId AS fId
FROM RKFace
JOIN RKMaster ON RKMaster.modelId = RKFace.imageModelId
LEFT JOIN RKFaceGroup ON RKFaceGroup.modelId = RKFace.faceGroupId
LEFT JOIN RKFaceCrop ON RKFaceCrop.faceId = RKFace.imageModelId
LEFT JOIN RKFacePrint ON RKFacePrint.faceId = RKFace.imageModelId
LEFT JOIN RKPerson ON RKPerson.modelId = RKFace.personId;
我希望这有帮助。:-)
目前在 iOS 上还没有这类东西的 API。