需求:现有VB6.0的项目需要实现人脸识别功能。
问题: 自身完成VB6.0人脸识别不行。故借助虹软SDK。虹软SDK不支持VB6.0,更没有Demo可看。所以下载C#2.2版本。
解决: 1.虹软SDK使用的是C#2.2, 已提取人脸特征放入SQLite数据库作为人脸特征库(可看官方Demo如果获取人脸特征)。
2.使用最新的VS2019创建动态链接库项目(生成时要设置成COM组件),将C#的人脸识别Demo在动态链接库项目上写一篇。
3.完成后生成DLL,将所有DLL拷贝到VB项目根目录,使用.netformwork注册DLL同时生成tlb,VB工程-》引用该tlb名称。
cd C:\Windows\Microsoft.NET\Framework\v4.0.30319
RegAsm.exe D:\ProjectAll\VB6\Test\ArcfaceClassLibrary.dll /tlb:D:\ProjectAll\VB6\Test\ArcfaceClassLibrary.tlb /codebase
调用方法:
将动态链接库项目下的Data放入VB项目根目录。
Dim Arcface As New ArcfaceClassLibrary.Class1
Print Arcface.GetVideo() ' 启用人脸识别
Print Arcface.GetString() ' 路径显示
实现效果:
VB启用人脸识别 弹出C#编写的人脸识别窗口,如果检测到了人脸而且是活体时关闭窗口并且返回识别信息。
顶部提供人脸识别动态链接库源码。