Delphi 如何使用SQL以编程方式访问Windows Live照片库中的面部识别缓存?

Delphi 如何使用SQL以编程方式访问Windows Live照片库中的面部识别缓存?,delphi,api,photo-gallery,face-recognition,windows-live,Delphi,Api,Photo Gallery,Face Recognition,Windows Live,我不是说嵌入在JPEG的XMP包中的“人物标签”。我说的是用来识别新面孔的人脸数据库 我想在我的程序中添加一个选项,使用已经训练过的WLPG数据库来识别人脸。我设法使用API(一个类型库dll)来检测人脸,但要识别人脸,它需要一个示例缓存对象,该对象在同一API中不可用。我可以创建自己的对象,但我希望使用已经存在的对象,以避免对用户重复培训 我知道数据库是%localappdata%\Local\Microsoft\Windows Live照片库\“格式,并且是SQL Server Compac

我不是说嵌入在JPEG的XMP包中的“人物标签”。我说的是用来识别新面孔的人脸数据库

我想在我的程序中添加一个选项,使用已经训练过的WLPG数据库来识别人脸。我设法使用API(一个类型库dll)来检测人脸,但要识别人脸,它需要一个示例缓存对象,该对象在同一API中不可用。我可以创建自己的对象,但我希望使用已经存在的对象,以避免对用户重复培训

我知道数据库是%localappdata%\Local\Microsoft\Windows Live照片库\“格式,并且是SQL Server Compact Edition 3.1格式。我用VisualStudio2010打开了数据库,但我更愿意在不直接访问数据库的情况下读取它,而且我没有看到导出该功能的DLL

顺便说一句,我使用的是Delphi2010


有什么想法吗?

注意:我一生中从未写过一行德尔菲

因为微软不支持这一点,所以不太可能有任何明显的API。因此,当新版本的Windows Live照片库发布时,按照您所说的去做很可能会让您大吃一惊


也就是说,您最好的希望是直接连接到数据库。您需要了解如何创建SQLServer到Delphi的连接。然后,创建一个连接字符串以连接到Windows Live照片库数据库。

我已经设法将数据库数据导入到我的IExemplarCache对象中,但我在如何将信息返回到识别引擎方面遇到了问题。我会继续尝试,但我怀疑我是否会将此方法应用到程序的最终版本中,即使我让它工作了。你能提供一些IExemplarCache类的详细信息吗?我在某种程度上使它工作了。它不再给出异常(我没有正确构造缓存项)。它会检测人脸,但人物id始终为0,这意味着它无法被识别。好的,它正在工作!我只是没有好的测试图像。你承认得不太好。我测试了一个已经被识别的图像的副本(在WLPG中),它只给出了正确的响应,作为33%的置信度的推荐。祝贺你!听到这个我很高兴!你能告诉我们你是怎么做到的吗?我有兴趣做一些类似的概念验证演示。