Thank you for your response!
I wish I could use the stitching module in my application. However, this is not an option as the application has an existing render pipeline using OpenGL that I have to use. OpenCV would also be way to slow in this case, as there are hundreds of cameras needed to be stitched and warped in real time at HD or 4K resolution each.
The render pipeline allows for 9 dof, however the 4dof from estimateAffinePartial2D already gives very good results with only minimal error. I could be using the 9dof homography, however I don’t see a way to preselect a seam there either. This is important for me because the render pipeline requires the right image to be on top of the left image. Are you suggesting that the function cv::findHomography can handle custom seams?
Cyclindrical or other projections than the orthogonal projections are really not of much importance here, the scene is always far away from the cameras, which are a cluster of cameras very close together, each with a slightly different lens (same model, but intrinsic parameters vary). With 4dof + lens undistortion I’m getting the desired results. Only in some instances where I’m missing the intrinsic camera calibration to do the lens undistortion do I get undesirable results if I’m not using OpenCV’s mandated seam.
So my initial question remains: is there a a way to select the seam that OpenCV uses to create the homography/affineTransform?