我目前正在做一个项目,我必须使用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();
}
}
}
据我所知,如果我没弄错的话,我必须为接口编写代码......或者我呢?请帮忙。
答案 0 :(得分:0)
这是开始分析视频文件的tutorial。
据我所知,如果我没弄错的话,我必须为接口编写代码......或者我呢?
不,不。如果要使用它们,只需在接口中实现这些方法即可。
以下是使用相机检测器的示例应用程序的链接,您可以将其与之关联,因为相机检测器和视频检测器都实现了FaceListener,ProcessListener和ImageListener接口。
编辑:你必须实现听众。例如,在代码示例中,您使用的是FaceListener,因此您需要编写回调的实现,即onFaceFound()
和onFaceLost()
。
你可能还想创建一个processStatusListener对象,并等待进程结束这样的视频文件:
AffdexProcessStatusListener processStatusListener = new AffdexProcessStatusListener();
processStatusListener.wait();
以下是使用CameraDetector的C# app AffdexMe链接。您可以在getting started guide中找到CameraDetector,PhotoDetector,VideoDetector和FrameDetector的示例。