采用双目摄像头时,采集出的图像是双拼图,为了只用其中一幅图像,实现源码如下:
//相机图像分离源码
//双目相机图像2560*960
//单个相机图像1280*960
cv::Mat roi_img_left;
cv::Mat roi_img_right;
roi_img_left = image(cv::Range(0, 960), cv::Range(0, 1280));
roi_img_right = image(cv::Range(0, 960), cv::Range(1281, 2560));
if (_capture)
{ //save this image
//cv::imwrite("1.png",image);
cv::imwrite(QString("%1/cam_%2.png").arg(_session).arg(_projector.get_current_pattern() + 1, 2, 10, QLatin1Char('0')).toStdString(), image);
cv::imwrite(QString("%1/camleft_%2.jpg").arg(_session).arg(_projector.get_current_pattern() + 1, 2, 10, QLatin1Char('0')).toStdString(), roi_img_left);
cv::imwrite(QString("%1/camright_%2.jpg").arg(_session).arg(_projector.get_current_pattern() + 1, 2, 10, QLatin1Char('0')).toStdString(), roi_img_right);
}
效果如图: