您的位置:首页 > 运维架构

cv::mat

2014-09-16 16:55 387 查看
//C++: template<typename T> T& Mat::at(int i, int j)
//其作用是Returns a reference to the specified array element.
depthcolorImg.at<cv::Vec3b>(i, j)[0] = colorImg.at<cv::Vec3b>(i, j)[0];
depthcolorImg.at<cv::Vec3b>(i, j)[1] = colorImg.at<cv::Vec3b>(i, j)[1];
depthcolorImg.at<cv::Vec3b>(i, j)[2] = colorImg.at<cv::Vec3b>(i, j)[2];

cv::Mat depthImg = cv::Mat::zeros(2, 3, CV_8UC3);//the depth image
for (int i = 0; i < 2; i++)
{
for (int j = 0; j < 3; j++)
{
depthImg.at<cv::Vec3b>(i, j)[1] = i * 3 + j;
}
}
//则rows = 2

//cols = 3

//注意kinect colormap输出的坐标是图像的(x,y)实际上是这里的(rows, cols)

//也就是

depthcolorImg.at<cv::Vec3b>(i, j)[0] = colorImg.at<cv::Vec3b>(y, x)[0];
depthcolorImg.at<cv::Vec3b>(i, j)[1] = colorImg.at<cv::Vec3b>(y, x)[1];
depthcolorImg.at<cv::Vec3b>(i, j)[2] = colorImg.at<cv::Vec3b>(y, x)[2];

float * data = (float *)cloud_host.data;
float * norm = (float *)norm_host.data;
if (outfile.is_open())
{
for (int i = 0; i < size; i++)
{
outfile<<(float)(*data)/7.0<<" ";
data++;
outfile<<(float)(*data)/7.0<<" ";
data++;
outfile<<(float)(*data)/7.0<<" ";
data++;
data++;

outfile<<(float)(*norm)<<" ";
data++;
outfile<<(float)(*norm)<<" ";
data++;
outfile<<(float)(*norm)<<" ";
data++;

outfile<<std::endl;

}}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  OPENCV MAT