SinusoidalPattern 类


  • public class SinusoidalPattern
    extends StructuredLightPattern
    实现基于文献[faps]的傅里叶变换轮廓术 (FTP)、相移轮廓术 (PSP) 和傅里叶辅助相移轮廓术 (FAPS) 的类。此类生成可与 FTP、PSP 和 FAPS 一起使用的正弦图案。
    • 构造函数详情

      • SinusoidalPattern

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

      • 创建

        public static SinusoidalPattern create​(SinusoidalPattern_Params parameters)
        构造函数。
        参数
        parameters - 正弦图案参数 SinusoidalPattern::Params:投影仪的宽度、高度和图案参数。
        返回
        自动生成
      • 创建

        public static SinusoidalPattern create()
        构造函数。
        返回
        自动生成
      • computePhaseMap

        public void computePhaseMap​(java.util.List<Mat> patternImages,
                                    Mat wrappedPhaseMap,
                                    Mat shadowMask,
                                    Mat fundamental)
        根据正弦图案计算包裹相位图。
        参数
        patternImages - 用于计算包裹相位图的输入数据。
        wrappedPhaseMap - 通过三种方法之一获得的包裹相位图。
        shadowMask - 用于丢弃阴影区域的掩码。
        fundamental - 用于计算极线并简化匹配步骤的基本矩阵。
      • computePhaseMap

        public void computePhaseMap​(java.util.List<Mat> patternImages,
                                    Mat wrappedPhaseMap,
                                    Mat shadowMask)
        根据正弦图案计算包裹相位图。
        参数
        patternImages - 用于计算包裹相位图的输入数据。
        wrappedPhaseMap - 通过三种方法之一获得的包裹相位图。
        shadowMask - 用于丢弃阴影区域的掩码。
      • computePhaseMap

        public void computePhaseMap​(java.util.List<Mat> patternImages,
                                    Mat wrappedPhaseMap)
        根据正弦图案计算包裹相位图。
        参数
        patternImages - 用于计算包裹相位图的输入数据。
        wrappedPhaseMap - 通过三种方法之一获得的包裹相位图。
      • unwrapPhaseMap

        public void unwrapPhaseMap​(Mat wrappedPhaseMap,
                                   Mat unwrappedPhaseMap,
                                   Size camSize,
                                   Mat shadowMask)
        展开包裹的相位图以消除相位歧义。
        参数
        wrappedPhaseMap - 根据图案计算的包裹相位图。
        unwrappedPhaseMap - 用于查找两个设备之间对应关系的展开相位图。
        camSize - 相机的分辨率。
        shadowMask - 用于丢弃阴影区域的掩码。
      • unwrapPhaseMap

        public void unwrapPhaseMap​(Mat wrappedPhaseMap,
                                   Mat unwrappedPhaseMap,
                                   Size camSize)
        展开包裹的相位图以消除相位歧义。
        参数
        wrappedPhaseMap - 根据图案计算的包裹相位图。
        unwrappedPhaseMap - 用于查找两个设备之间对应关系的展开相位图。
        camSize - 相机的分辨率。
      • findProCamMatches

        public void findProCamMatches​(Mat projUnwrappedPhaseMap,
                                      Mat camUnwrappedPhaseMap,
                                      java.util.List<Mat> matches)
        借助展开的相位图查找两个设备之间的对应关系。
        参数
        projUnwrappedPhaseMap - 投影仪的展开相位图。
        camUnwrappedPhaseMap - 相机的展开相位图。
        matches - 用于显示对应关系图的图像。
      • computeDataModulationTerm

        public void computeDataModulationTerm​(java.util.List<Mat> patternImages,
                                              Mat dataModulationTerm,
                                              Mat shadowMask)
        计算数据调制项。
        参数
        patternImages - 使用投影图案捕获的图像。
        dataModulationTerm - 保存数据调制项的 Mat。
        shadowMask - 用于丢弃阴影区域的掩码。