feat 拼图去除overlap

dev_lsy
liusiyang 2 weeks ago
parent 61f3682680
commit 90c604ac45

@ -167,14 +167,22 @@ int CameraCheckAnalysisy::Detect_Pre()
// pImageResult->result->in_shareImage->strCameraName, pImageResult->result->in_shareImage->strChannel);
// 简单硬拼接img 在左img_B 在右,拼接结果写回 img
// 水平方向有overlap拼接时固定去掉左图最右边overlap区域
if (pImageResult->result->in_shareImage->img.size() != pImageResult->result->in_shareImage->img_B.size() ||
pImageResult->result->in_shareImage->img.type() != pImageResult->result->in_shareImage->img_B.type())
{
m_pdetlog->AddCheckstr(PrintLevel_1, "Detect_Pre", "Cam %s ==================img size/type != img_B ", strBasic.c_str());
return 1;
}
const int overlap = 1056;
if (pImageResult->result->in_shareImage->img.cols <= overlap)
{
m_pdetlog->AddCheckstr(PrintLevel_1, "Detect_Pre", "Cam %s ==================img.cols <= overlap %d ", strBasic.c_str(), overlap);
return 1;
}
cv::Mat merge_img;
cv::hconcat(pImageResult->result->in_shareImage->img, pImageResult->result->in_shareImage->img_B, merge_img);
cv::hconcat(pImageResult->result->in_shareImage->img(cv::Rect(0, 0, pImageResult->result->in_shareImage->img.cols - overlap, pImageResult->result->in_shareImage->img.rows)),
pImageResult->result->in_shareImage->img_B, merge_img);
pImageResult->result->in_shareImage->img = merge_img;
// 拼接完成后 img_B 不再需要,立即释放内存

Loading…
Cancel
Save