将cv::Points2f的向量与cv::Matx33f相乘
Multiplying a a vector of cv::Points2f with a cv::Matx33f
我有一个运行良好的函数:
cv::Point2f classA::DoStuff(cv::Point2f pTmp){
cv::Matx33f newMatrix = oldMatrix ; // oldMatrix is already defined
cv::Point3f newPoint = newMatrix *pTmp;
cv::Point2f result(newPoint.x, newPoint.y);
return result;
}
现在我想在一组点上运行这个函数,一个向量,我知道我可以用for循环来实现,但从这个答案来看,用标量乘以一个向量:
std::transform(myv1.begin(), myv1.end(), myv1.begin(),
std::bind1st(std::multiplies<T>(),3));
使用STL 将矢量元素乘以标量值
我想在一行中就可以做到这一点——任何关于如何使用我的功能的想法,比如:
std::vector<cv::Point2f> classA::Dostuff(std::vector<cv::Point2f> inputVector){
cv::Matx33f newMatrix = oldMatrix ; // oldMatrix is already defined
..!!!
提前谢谢?
}
假设您想从classA
的实例内部运行它,它将是这样的:
using namespace std::placeholders;
std::transform(vec.begin(),
vec.end(),
vec.begin(),
std::bind(&classA::DoStuff, this, _1));
其中CCD_ 2是CCD_。请注意,您可能正在制作输入向量的不必要且可能成本高昂的副本。除非你在函数中需要一个副本,否则你最好传递一个常量引用:
std::vector<cv::Point2f> classA::Dostuff(const std::vector<cv::Point2f>& inputVector);
相关文章:
- 将"打开的CV图像"中的"颜色"转换为整数格式
- 概念中的cv限定符需要表达式参数列表
- 将CHW格式的浮点向量转换为cv::Mat
- 错误的cv::face FacemarkLBF实例化
- 如何检查给定的参数是否为 cv::noArray()?
- 开放 CV 中的动态内存分配,用于视频处理
- 如何在 opencv 中使用 cv::VideoCapture::waitAny()
- 错误:未定义对cv::cudacodec::createVideoReader的引用
- OpenCV 3.4.1 error readNetFromTensorflow 无法在 cv::d nn::ReadProtoFromBinaryFile 中打开 .pb
- C++:从GPU内存(cudaMemcpy2D)获取BGR图像(cv::Mat)
- 选择基于另一个垫子的非零像素的cv::Mat的一部分?
- 将 cv::mat 转换为 QImage
- Inference pytorch C++ with alexnet and cv::imread image
- OpenCV 3.4.3 中对 'cv::String::d eallocate()' 错误的未定义引用
- cv::Normalise() 中的 L2_NORM 和 NORM_MINMAX 实现有什么区别?
- 将 cv::Mat 转换为 std::vector 的通用函数
- OpenCV undefined reference to 'cv::imread(cv::String const&, int)'
- 在 QML VideoOutput 中将 cv::mat 显示为 QVideoFrame
- 将cv::Points2f的向量与cv::Matx33f相乘
- 如何将cv::Mat转换为cv::Matx33f