根据“Face”元数据获取PHAssets

时间:2015-04-01 16:38:51

标签: ios photokit phasset

在Mac用户中使用照片可以标记照片中的人物。然后将这些数据同步到云端,他们可以在iOS上的照片中执行面部搜索。元数据的类型似乎是" Face"。是否有可能获得与这些面孔之一相关的所有资产?我想抓住其中某个人的所有图像。你可以在iOS的照片搜索中做到这一点,所以我希望它也对其他开发者开放。

有没有人有任何想法?

提前致谢。

2 个答案:

答案 0 :(得分:2)

Apple发布了一个用于访问Apple Photos的SDK,称为Photo Kit。在文档中,您将找到对照片应用程序和照片云的API访问。但是,如果您正在寻找一种HTTP API,我相信不会公开宣布该API。

如果您只需要访问Photos 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;

我希望这会有所帮助。 :-)

答案 1 :(得分:0)

目前iOS上没有针对此类内容的API。