C# 中识别图片中有几个人

可以使用Microsoft的AI平台Cognitive Services的Computer Vision API。以下是一个简单的示例代码,展示了如何使用该API来识别图片中的人物数量:

1、首先,你需要在Azure门户上创建一个Computer Vision资源,并获取你的密钥和端点。

2、安装必要的NuGet包:Microsoft.Azure.CognitiveServices.Vision.ComputerVision

using Microsoft.Azure.CognitiveServices.Vision.ComputerVision;
using Microsoft.Azure.CognitiveServices.Vision.ComputerVision.Models;
using System;
using System.IO;
using System.Threading.Tasks;
 
namespace PeopleCounter
{
    class Program
    {
        static string subscriptionKey = "你的密钥";
        static string endpoint = "你的端点";
 
        static async Task Main(string[] args)
        {
            var computerVision = new ComputerVisionClient(new ApiKeyServiceClientCredentials(subscriptionKey))
            {
                Endpoint = endpoint
            };
 
            string imageUrl = "图片的URL";
            ImageAnalysis imageAnalysis = await computerVision.AnalyzeImageAsync(imageUrl, features: new[] { VisualFeature.Faces});
 
            Console.WriteLine("Detected faces: ");
            if (imageAnalysis.Faces != null)
            {
                Console.WriteLine(imageAnalysis.Faces.Count);
            }
            else
            {
                Console.WriteLine("No faces detected.");
            }
 
            Console.ReadKey();
        }
    }
}

确保替换subscriptionKey和endpoint变量值为你的Computer Vision资源的实际值。imageUrl变量应包含你想要分析的图片的URL。

这段代码会输出图片中检测到的人脸数量。如果没有检测到人脸,它会输出“No faces detected.”。请注意,这个示例使用了一个URL来指向图片,你也可以修改代码来接受本地文件路径

12-15 09:52