类 MACE


  • public class MACE
    extends Algorithm
    最小平均相关能量滤波器,用于使用(可取消的)生物特征进行身份验证。(不需要许多正样本进行训练(10-50),根本不需要负样本,并且对噪声/加盐具有鲁棒性)另见:CITE: Savvides04 此实现主要基于:https://code.google.com/archive/p/pam-face-authentication (GSOC 2009) 使用方法如下: Ptr<face::MACE> mace = face::MACE::create(64); vector<Mat> pos_images = ... mace->train(pos_images); Mat query = ... bool same = mace->same(query); 您也可以使用双因素身份验证,以及额外的密码: String owners_passphrase = "ilikehotdogs"; Ptr<face::MACE> mace = face::MACE::create(64); mace->salt(owners_passphrase); vector<Mat> pos_images = ... mace->train(pos_images); // 现在,用户必须提供有效的密码和图像:Mat query = ... cout << "enter passphrase: "; string pass; getline(cin, pass); mace->salt(pass); bool same = mace->same(query); 保存/加载您的模型: Ptr<face::MACE> mace = face::MACE::create(64); mace->train(pos_images); mace->save("my_mace.xml"); // 稍后:Ptr<MACE> reloaded = MACE::load("my_mace.xml"); reloaded->same(some_image);
    • 构造函数摘要

      构造函数 
      修饰符 构造函数 描述
      protected MACE​(long addr)  
    • 方法摘要

      所有方法 静态方法 实例方法 具体方法 
      修饰符和类型 方法 描述
      static MACE __fromPtr__​(long addr)  
      static MACE 创建()
      构造函数
      static MACE create​(int IMGSIZE)
      构造函数
      protected void finalize()  
      static MACE load​(java.lang.String filename)
      构造函数
      static MACE load​(java.lang.String filename, java.lang.String objname)
      构造函数
      void salt​(java.lang.String passphrase)
      可选地使用随机卷积加密图像
      boolean same​(Mat query)
      将查询图像与最小类值阈值相关联
      void train​(java.util.List<Mat> images)
      用正特征对其进行训练,计算MACE滤波器:h = D(-1) * X * (X(+) * D(-1) * X)(-1) * C 也计算此类的最小阈值,即训练图像中最小的自相似性
      • 继承自类 java.lang.Object的方法

        clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 构造函数详情

      • MACE

        protected MACE​(long addr)
    • 方法详情

      • __fromPtr__

        public static MACE __fromPtr__​(long addr)
      • salt

        public void salt​(java.lang.String passphrase)
        可选地使用随机卷积加密图像
        参数
        passphrase - 将由此生成一个 crc64 随机种子
      • train

        public void train​(java.util.List<Mat> images)
        用正特征对其进行训练,计算MACE滤波器:h = D(-1) * X * (X(+) * D(-1) * X)(-1) * C 也计算此类的最小阈值,即训练图像中最小的自相似性
        参数
        images - 包含训练图像的 vector<Mat>
      • same

        public boolean same​(Mat query)
        将查询图像与最小类值阈值相关联
        参数
        query - 包含查询图像的 Mat
        返回
        自动生成
      • load

        public static MACE load​(java.lang.String filename,
                                java.lang.String objname)
        构造函数
        参数
        filename - 从预序列化的 FileStorage 构建新的 MACE 实例
        objname - (可选)FileStorage 中的顶级节点
        返回
        自动生成
      • load

        public static MACE load​(java.lang.String filename)
        构造函数
        参数
        filename - 从预序列化的 FileStorage 构建新的 MACE 实例
        返回
        自动生成
      • 创建

        public static MACE create​(int IMGSIZE)
        构造函数
        参数
        IMGSIZE - 图像将调整为此大小(应为偶数)
        返回
        自动生成
      • 创建

        public static MACE create()
        构造函数
        返回
        自动生成
      • finalize

        protected void finalize()
                         throws java.lang.Throwable
        覆盖
        finalize 在类 Algorithm
        抛出
        java.lang.Throwable