using IOTContainer.Model;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace IOTContainer.Common
{
public class FaceParameters
{
///
/// 公共参数
///
public static FaceParameters Parameters
{
get
{
if (_par == null)
_par = new FaceParameters();
return _par;
}
}
private static FaceParameters _par;
#region 公共参数
///
/// 默认电脑自带摄像头,device可能为0,若外接usb摄像头,则device可能为1。
///
public int _cameraIndex;
///
/// 对比阈值,超过当前值才合格(compare 使用0-100)
///
public int _threshold;
///
/// 对比阈值,超过当前值才合格(track和attr使用0-1)
///
public double _miniThreshold;
///
/// 百度人脸Sdk最大检测数
///
public int _maxDectNum;
///
/// 程序基目录
///
public string _baseDir;
///
/// 待上传的人脸统计数据
///
public List _faceToUploadList;
///
/// 本机ip
///
public string _ipAddress;
///
/// 视频流是否开启
///
public bool _isLive = false;
///
/// 视频流是否需要常开
///
public bool _needAlive = false;
///
/// 是否需要传递视频流
///
public bool _isOpenLive = true;
///
/// 视频流像素X位
///
public int _liveX;
///
/// 视频流像素Y位
///
public int _liveY;
///
/// 视频流宽度
///
public int _liveWidth;
///
/// 视频流高度
///
public int _liveHeight;
///
/// 当前人脸识别后请求后台传递的方法参数
///
public string _method;
///
/// 百度SDK是否初始化成功
///
public bool isInit = false;
#endregion
public FaceParameters()
{
#region 参数初始化
_cameraIndex = Convert.ToInt32(ConfigurationManager.AppSettings["CameraIndex"]);
_threshold = Convert.ToInt32(ConfigurationManager.AppSettings["Threshold"]);
_maxDectNum = Convert.ToInt32(ConfigurationManager.AppSettings["MaxDectNum"]);
_needAlive = ConfigurationManager.AppSettings["NeedAlive"] == "1" ? true : false;
int.TryParse(ConfigurationManager.AppSettings["LiveX"], out _liveX);
int.TryParse(ConfigurationManager.AppSettings["LiveY"], out _liveY);
int.TryParse(ConfigurationManager.AppSettings["LiveWidth"], out _liveWidth);
int.TryParse(ConfigurationManager.AppSettings["LiveHeight"], out _liveHeight);
_method = "";
_miniThreshold = (double)_threshold / (double)100;
_baseDir = AppDomain.CurrentDomain.BaseDirectory;
_faceToUploadList = new List();
_ipAddress = SystemManage.GetLocalIp();
#endregion
}
}
}