【发布时间】:2015-04-01 16:38:51
【问题描述】:
在 Mac 中使用照片用户可以在照片中标记人物。然后,这些数据会同步到云端,在那里他们可以在 iOS 上的照片中进行面部搜索。元数据的类型似乎是“人脸”。是否可以获得与其中一张面孔相关的所有资产?我想抓取其中有某个人的所有图像。您可以在 iOS 中的照片搜索中执行此操作,因此我希望它也对其他开发人员开放。
有人有什么想法吗?
提前致谢。
【问题讨论】:
在 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。
【讨论】: