Affdex视频检测器

时间:2016-04-24 20:57:34

标签: c# interface affdex-sdk

我目前正在做一个项目,我必须使用Affectiva SDK来分析我录制的一些视频。我已经下载了他们给我的文件,并开始编写SDK的代码,但是当我在代码中调用回调函数时,Visual Studio似乎不接受放入的参数。所以我想必须完成回调函数的接口。我不是很清楚如何做到这一点,因为我认为这都是在他们的汇编代码中完成的。到目前为止我的代码看起来像这样:

using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Threading.Tasks;
using System.Windows;
using Affdex;


namespace ConsoleApplication2
{
class Program
{
    public interface FaceListener { }
    public interface ImageListener { }
    public interface ProcessStatusListener { }

    static void Main(string[] args)
    {
        VideoDetector detector = new VideoDetector(15);

        String licensePath = "C:/Users/hamud/Desktop/sdk_ahmedmudi1992@gmail.com.license";
        detector.setLicensePath(licensePath);

        String classifierPath = "C:/Programmer/Affectiva/Affdex SDK/data";
        detector.setClassifierPath(classifierPath);

        detector.setFaceListener(this);
        detector.setImageListener(this);
        detector.setProcessStatusListener(this);

        detector.setDetectSmile(true);
        detector.setDetectSurprise(false);
        detector.setDetectBrowRaise(false);
        detector.setDetectAnger(false);
        detector.setDetectDisgust(false);
        detector.setDetectAllExpressions(false);

        detector.start();

        detector.stop();
    }
}

}

据我所知,如果我没弄错的话,我必须为接口编写代码......或者我呢?请帮忙。

1 个答案:

答案 0 :(得分:0)

这是开始分析视频文件的tutorial

  

据我所知,如果我没弄错的话,我必须为接口编写代码......或者我呢?

不,不。如果要使用它们,只需在接口中实现这些方法即可。

以下是使用相机检测器的示例应用程序的链接,您可以将其与之关联,因为相机检测器和视频检测器都实现了FaceListenerProcessListenerImageListener接口。

编辑:你必须实现听众。例如,在代码示例中,您使用的是FaceListener,因此您需要编写回调的实现,即onFaceFound()onFaceLost()

你可能还想创建一个processStatusListener对象,并等待进程结束这样的视频文件:

AffdexProcessStatusListener processStatusListener = new AffdexProcessStatusListener();
processStatusListener.wait();

以下是使用CameraDetector的C# app AffdexMe链接。您可以在getting started guide中找到CameraDetector,PhotoDetector,VideoDetector和FrameDetector的示例。