我不确定OpenCV(C++)中是否存在执行此操作的功能.
我想为OpenCV中cv :: Mat的每个像素调用一个自定义函数,整个结果应该存储在一个矩阵中.
我可以在一行代码中执行此操作(类似于Python中的map函数)吗?
我没有尝试过这个,但根据文档,有用于访问矩阵元素的STL样式迭代器:
// compute sum of positive matrix elements, iterator-based variant
double sum=0;
MatConstIterator_<double> it = M.begin<double>(), it_end = M.end<double>();
for(; it != it_end; ++it)
sum += std::max(*it, 0.);
Run Code Online (Sandbox Code Playgroud)
如果它们被正确实现,你应该可以像std :: for_each一样使用它们
std::for_each(M.begin<double>(), M.end<double>(), [](double& e) { /* do something with e */ });
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1114 次 |
| 最近记录: |