img1 = img1[135:1080,:]
h1,l1 = img1.shape[:]
img2 = img2[191:923,12:]
h2,l2 = img2.shape[:]
img3 = img3[79:985,49:]
h3,l3 = img3.shape[:]
img4 = img4[0:813,75:]
h4,l4 = img4.shape[:]
h = h1+h2+h3+h4
img22 = np.zeros([(1080*4),1920],dtype=np.uint8)
**img22[h-h1:h,0:l1] = img1
img22[h-h1-h2:h-h1,0:l2] = img2
img22[h-h1-h2-h3:h-h1-h2,0:l3] = img3
img22[h-h1-h2-h3-h4:h-h1-h2-h3,0:l4] = img4**
Как реализовать указанный в cpp? У меня на плате Nvidia работает версия opencv 4. Код в основном сшивает 4 изображения img1, img2, img3, img4. Это становится легко с python. Но я запутался с матом cpp. пожалуйста, помогите мне
int h1,h2,h3,h4,l1,l2,l3,l4,h;
cv::Mat gimg1,gimg2,gimg3,gimg4;
cv::Size sz = gimg1.size();
cvtColor(img1, gimg1, cv::COLOR_BGR2GRAY);
cvtColor(img2, gimg2, cv::COLOR_BGR2GRAY);
cvtColor(img3, gimg3, cv::COLOR_BGR2GRAY);
cvtColor(img4, gimg4, cv::COLOR_BGR2GRAY);
cv::Mat simg = cv::Mat::zeros(sz.width*4,sz.height, CV_8UC1);
cv::Mat fimg1 = gimg1.rowRange(135, gimg1.rows);
h1 = fimg1.rows;
l1 = fimg1.cols;
cv::Mat ggimg2 = gimg2.rowRange(191, 923);
cv::Mat fimg2 = ggimg2.colRange(12,gimg2.cols);
h2 = fimg2.rows;
l2 = fimg2.cols;
cv::Mat ggimg3 = gimg3.rowRange(79, 985);
cv::Mat fimg3 = ggimg3.colRange(49,gimg3.cols);
h3 = fimg3.rows;
l3 = fimg3.cols;
cv::Mat ggimg4 = gimg4.rowRange(0, 813);
cv::Mat fimg4 = ggimg4.colRange(75,gimg4.cols);
h4 = fimg4.rows;
l4 = fimg4.cols;
h = h1+h2+h3+h4;