opencv - cv::Mat 矩阵,如何减少 cv::Mat 中小数点右边的数字?

标签 opencv digits decimal mat computer-vision

我有一个应用程序可以在 iPhone 屏幕上打印 3x3 cv::Mat。我需要减少小数位数,因为屏幕不是那么大,请参阅:

[1.004596557012473,-0.003116992336797859,5.936915104939593; -0.007241746117066327,0.9973985665720294,-0.2118670500989478; 1.477734234970711e-05, -1.03363734495053e-05, 1.000089074805124]

所以我想将小数位数减少 .4 或 .6 或六位小数。有什么想法吗?

干杯

最佳答案

直接OpenCV版本

根据
选择你想要的基础格式器 http://docs.opencv.org/3.1.0/d3/da1/classcv_1_1Formatter.html
然后调整函数 set64fPrecision(或 set32fPrecision)
然后计算:

 cv::Ptr<cv::Formatter> formatMat=Formatter::get(cv::Formatter::FMT_DEFAULT);
 formatMat->set64fPrecision(3);
 formatMat->set32fPrecision(3);
 std::cout << "matrix:" << std::endl << formatMat->format( sim ) << std::endl;

关于opencv - cv::Mat 矩阵,如何减少 cv::Mat 中小数点右边的数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16992370/

相关文章:

python - 特定区域的opencv颜色检测

android - 使用 OpenCV 进行 gabor 边缘检测

c++ - 为什么 std::numeric_limits::digits10 对于 int 类型少一个?

algorithm - 按顺序计算包含数字 2018 的最多 n 个整数

javascript - 在javascript中将 float 转换为近似分数

opencv - 如何关闭Raspberry Pi上的opencv imshow()窗口?

c++ - Qt+Opencv中导入Gstreamer视频

Python:有策略地遍历 0-9 的十位数字

.net - 调整小数精度,.net

python - Python 中最多保留 16 位小数