OpenCV_座標を Mat 型にする

諸事情により、[x, y, z] を Mat 型にしたかった。

( cv::Mat_< T >( 行, 列) ) << 行×列 );

 

以下で、座標 [ 1, 2, 3 ] を 3 × 1 の行列に。

cv::Mat pMat = (cv::Mat_<double>(3, 1) << 1, 2, 3);

で、pMat は行列として扱われる 座標 [ 1, 2, 3 ] が格納。
正しいかどうかは不明。

 

なお、3 × 4 行列 の場合。( Memo )

cv::Mat m1 = (cv::Mat_<double>(3, 4) << 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ,11, 12);
m1=[
  1, 2, 3, 4;
  5, 6, 7, 8;
  9, 10, 11, 12
]

 

cv::Mat
行列の 1 つの要素を型なしとして扱い、アクセスする際に型を与える
cv::Mat hoga( cv::Size(200, 100),  CV_8UC3,  cv::Scalar(0, 0, 255) );
.at<cv::Vec3b>( y, x );    //cv::Vec3b は uchar型3要素のベクタ ー。

 

cv::Mat_
定義する際に型を与え、要素にアクセスする際には型を必要としない
cv::Mat_< T >( 行, 列 ) << 要素… );

 

こちらから。
http://opencv.jp/cookbook/opencv_mat.html#id25
OpenCVのcv::Mat / cv::Mat_の使い方(cv::Mat編) | Miyabiarts.net
OpenCVのcv::Mat / cv::Mat_の使い方(cv::Mat_編) | Miyabiarts.net
http://www.wakayama-u.ac.jp/~chen/cmake/LearningOpenCV.html
http://www.wakayama-u.ac.jp/~chen/opencv/opencv2.html
http://opencv.jp/opencv-2.1/cpp/camera_calibration_and_3d_reconstruction.html

 

以上。

不明。
cv::Mat の CV_8UC3 などは、unsigned char という型だよなぁ??
型なし?