11 std::string 
format(
const cv::Mat_<int8_t> &m){
 
   13     for (
int r = 0; r < m.rows; r++) {
 
   15         for (
int c = 0; c < m.cols; c++) {
 
   16             ss << (c==0?
"":
", ") << std::setw(6) << m(r,c);
 
   18         ss << (r<m.cols-1?
";":
"]") << std::endl; 
 
   22 std::string 
format(
const cv::Mat_<int> &m){
 
   24     for (
int r = 0; r < m.rows; r++) {
 
   26         for (
int c = 0; c < m.cols; c++) {
 
   27             ss << (c==0?
"":
", ") << std::setw(12) << m(r,c);
 
   29         ss << (r<m.cols-1?
";":
"]") << std::endl; 
 
   33 std::string 
format(
const cv::Mat_<float> &m){
 
   35     for (
int r = 0; r < m.rows; r++) {
 
   36         ss << std::setprecision(std::numeric_limits<float>::digits10 + 1);
 
   38         for (
int c = 0; c < m.cols; c++) {
 
   39             ss << (c==0?
"":
", ") << std::setw(12) << m(r,c);
 
   41         ss << (r<m.cols-1?
";":
"]") << std::endl; 
 
   45 std::string 
format(
const cv::Mat_<double> &m){
 
   47     for (
int r = 0; r < m.rows; r++) {
 
   48         ss << std::setprecision(std::numeric_limits<double>::digits10 + 1);
 
   50         for (
int c = 0; c < m.cols; c++) {
 
   51             ss << (c==0?
"":
", ") << std::setw(24) << m(r,c);
 
   53         ss << (r<m.cols-1?
";":
"]") << std::endl; 
 
   57 std::string 
format(
const cv::Matx33d &m){
 
   59     for (
int r = 0; r < m.rows; r++) {
 
   60         ss << std::setprecision(std::numeric_limits<double>::digits10 + 1);
 
   62         for (
int c = 0; c < m.cols; c++) {
 
   63             ss << (c==0?
"":
", ") << std::setw(24) << m(r,c);
 
   65         ss << (r<m.cols-1?
";":
"]") << std::endl;