当前位置: 首页>>代码示例>>C++>>正文


C++ Vector2f::transpose方法代码示例

本文整理汇总了C++中eigen::Vector2f::transpose方法的典型用法代码示例。如果您正苦于以下问题:C++ Vector2f::transpose方法的具体用法?C++ Vector2f::transpose怎么用?C++ Vector2f::transpose使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在eigen::Vector2f的用法示例。


在下文中一共展示了Vector2f::transpose方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: gaussian

 float PoseWithCovarianceStampedToGaussianPointCloud::gaussian(const Eigen::Vector2f& input,
                                                               const Eigen::Vector2f& mean,
                                                               const Eigen::Matrix2f& S,
                                                               const Eigen::Matrix2f& S_inv)
 {
   Eigen::Vector2f diff = input - mean;
   if (normalize_method_ == "normalize_area") {
     return normalize_value_ * 1 / (2 * M_PI * sqrt(S.determinant())) * exp(- 0.5 * (diff.transpose() * S_inv * diff)[0]);
   }
   else if (normalize_method_ == "normalize_height") {
     return normalize_value_ * exp(- 0.5 * (diff.transpose() * S_inv * diff)[0]);
   }
 }
开发者ID:rkoyama1623,项目名称:jsk_recognition,代码行数:13,代码来源:pose_with_covariance_stamped_to_gaussian_pointcloud_nodelet.cpp

示例2: inclination

/** Compute optimal translation scale.
 * @param std::vector<Eigen::Vector4f> vector with 3D points 
 * @param double median distance of all points
 * @param camera pitch angle
 * @param camera height
 * @return double optimal scale */
double MonoOdometer5::getTranslationScale(std::vector<Eigen::Vector4f> points3D, double median, double pitch, double height)
{
    double sigma = median/50.0;
    double weight = 1.0/(2.0*sigma*sigma);

	// ds stores the height of all points from the ground (?)
    std::vector<Eigen::Vector2f> pointsPlane;
    std::vector<double> ds;
    Eigen::Vector2f inclination;
    inclination(0) = cos(-pitch);
    inclination(1) = sin(-pitch);
    for(int i=0; i<points3D.size(); i++)
    {
        double d = inclination.transpose() * points3D[i].segment<2>(1);
        ds.push_back(d);
    }
    
    int bestIndex = 0;
    double maxSum = 0.0;
    
    for(int i=0; i<points3D.size(); i++)
    {
        if(ds[i] > median / param_odometerMotionThreshold_)
        {
            double sum = 0.0;
            for(int j=0; j<points3D.size(); j++)
            {
                double dist = ds[j] - ds[i];
                sum += exp(-dist*dist*weight);
            }
            if(sum > maxSum)
            {
                maxSum = sum;
                bestIndex = i;
            }
        }        
    }
    
    double scale = height / ds[bestIndex];
    return scale;
}
开发者ID:anaritaflp,项目名称:usplasi_multicam_vo,代码行数:47,代码来源:MonoOdometer5.cpp


注:本文中的eigen::Vector2f::transpose方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。