背景
要想使用C#的人脸识别控制台,对于没有使用过的朋友,可能会遇到比较多的坑,所以我这里就先去踩了坑,趁着这段时间,把能直接运行的步骤告诉大家。
前期准备
前提是下载安装好vs2019,下载好SDK的代码,代码链接为:https://github.com/tencentcloud/tencentcloud-sdk-dotnet。
具体操作步骤
使用vs打开解决方案
右键单击解决方案,选择添加,然后选择新建项目,选择控制台应用
设置项目名称为ConsoleDemo,然后点击创建
然后从人脸识别云API在线调用接口复制dotnet代码替换Program.cs中的代码,添加自己的SecretId,SecretKey ,
不要泄露了自己的秘钥。
代码语言:javascript复制
using System;
using System.Threading.Tasks;
using TencentCloud.Common;
using TencentCloud.Common.Profile;
using TencentCloud.Iai.V20180301;
using TencentCloud.Iai.V20180301.Models;
namespace TencentCloudExamples
{
class DetectFace
{
static void Main(string[] args)
{
try
{
Credential cred = new Credential {
SecretId = " ",
SecretKey = " "
};
ClientProfile clientProfile = new ClientProfile();
HttpProfile httpProfile = new HttpProfile();
httpProfile.Endpoint = ("iai.tencentcloudapi.com");
clientProfile.HttpProfile = httpProfile;
IaiClient client = new IaiClient(cred, "ap-guangzhou", clientProfile);
DetectFaceRequest req = new DetectFaceRequest();
string strParams = "{"Url":"http://n.sinaimg.cn/tech/transform/28/w530h298/20190910/eb05-iekuaqt2213418.jpg","NeedFaceAttributes":1,"NeedQualityDetection":1,"FaceModelVersion":"3.0"}";
req = DetectFaceRequest.FromJsonString<DetectFaceRequest>(strParams);
DetectFaceResponse resp = client.DetectFace(req).
ConfigureAwait(false).GetAwaiter().GetResult();
Console.WriteLine(AbstractModel.ToJsonString(resp));
}
catch (Exception e)
{
Console.WriteLine(e.ToString());
}
Console.Read();
}
}
}
右键解决方案,设置启动项目为ConsoleDemo
然后配置属性,先取消生成下的打勾,然后点击应用,然后在勾上,然后再√,然后点击确定。
我看到代码还有红,不要慌
在菜单栏里选择工具,然后选择Nuget,管理解决方案的Nuget程序包
依次点击图中的1,2,3,4,5的步骤。这一步是非常重要的,一定要给项目安装SDK.
安装过程中,弹出如下对话框,然后点击确定。
然后选择我接受,等待安装完就可以了。
然后发现红色都没有了,就是所有的依赖项都已经安装完毕了。
然后点击运行即可
运行结果如下,红色方框就是所返回的结果。
总结
之前写过一篇文章介绍vs控制台的使用,有了前面的基础,在使用C#人脸识别接口就更容易上手了,本来想直接加上去,但是感觉那样可能就比较乱,所以单独分离出来作为一篇文章。按照我的步骤往下一步一步的去实现就可以了,因为我已经作为初学者去踩初学者可能遇到的坑了。本人也是C#初学者,其中有不周到的地方,望理解。想必大家也是能够使用了,在我接下来的文章里,我主要是去实现web form 和win form的调用,敬请期待吧。