void YARPGaussianFeatures::Apply (const YARPImageOf<YarpPixelMono>& in)
{
	assert (in.GetPadding() == 0);

	for (int i = 1; i <= m_sigmas; i++)
	{
		m_features(i) = SpecialConvolveX (m_coeffs[i-1], (const unsigned char *)in.GetAllocatedArray());
		m_features(i+m_sigmas) = SpecialConvolveY (m_coeffs[i-1], (const unsigned char *)in.GetAllocatedArray());
	}
}
Exemple #2
0
int hierarchicalClustering(const Mat& features, Mat& centers, const KMeansIndexParams& params)
{
    CV_Assert(features.type() == CV_32F);
    CV_Assert(features.isContinuous());
    ::cvflann::Matrix<float> m_features(features.rows, features.cols, (float*)features.ptr<float>(0));

    CV_Assert(features.type() == CV_32F);
    CV_Assert(features.isContinuous());
    ::cvflann::Matrix<float> m_centers(centers.rows, centers.cols, (float*)centers.ptr<float>(0));

    return ::cvflann::hierarchicalClustering(m_features, m_centers, ::cvflann::KMeansIndexParams(params.branching, params.iterations,
            (::flann_centers_init_t)params.centers_init, params.cb_index));
}