我有一个应用程序可以在 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/