Can't get my pano horizon to be straight

159 views
Skip to first unread message

Brian Koester

unread,
Jun 11, 2025, 5:01:25 AMJun 11
to PTGui Support
I watched a video on using vertical and horizontal control points, and it didn't improve my results. I checked the control point table, and it looks fine, but it says the points are off. It was shot on a Mavic 3 CINE using the automated 360-degree pano feature.

Screenshot 2025-06-10 at 3.00.13 PM.png
Screenshot 2025-06-10 at 3.12.42 PM.pngScreenshot 2025-06-10 at 3.13.13 PM.png

Erik Krause

unread,
Jun 11, 2025, 5:17:05 AMJun 11
to pt...@googlegroups.com
Am 11.06.25 um 00:14 schrieb Brian Koester:

> I watched a video on using vertical and horizontal control points, and it
> didn't improve my results. I checked the control point table, and it looks
> fine, but it says the points are off. It was shot on a Mavic 3 CINE using
> the automated 360-degree pano feature.

Vertical and horizontal control points are by default only used to level
the entire panorama, not the single images. To have it working on single
images, switch to "Hor / vert control points: include in single pass" on
Optimizer tab, advanced interface.

However, your problem is most likely due to parallax issues. The drone
did not rotate around the no-parallax point, so the near foreground
shifts relative to more distant objects. To work around this, you would
have to prioritize better stitching along the horizon over proper
alignment in the foreground.

As a first measure you can try to switch on Viewpoint Correction (on
Optimiser tab, advanced interface) for the foreground images only and
optimize. If this doesn't work out, try deleting all control points on
nearby objects, particularly on the roof. Set more control points on or
near the horizon.

If nothing helps, please make a set of images available for download.
Half size JPGs would be fine. Use wetransfer, dropbox or similar.

--
Erik Krause
http://www.erik-krause.de

John Houghton

unread,
Jun 11, 2025, 1:15:56 PMJun 11
to PTGui Support
Brian, Clearly, there are big alignment errors due to parallax, which is responsible for the very high control point distances:

alignment-error.png 

When faced with images almost certainly having severe parallax issues, I find the best course of action is to first establish a solid framework consisting of just the horizontal row of images containing the horizon.  Because the horizon is so far away as to be relatively unaffected by parallax, you can place/generate control points ONLY along the most distant features near to the horizon in that row and run the Optimizer to align the images perfectly - at the horizon - i.e. in the green area:

Screenshot.png

After levelling to get the horizon straight and horizontal, the images in that row can then be fixed in position by unchecking their yaw, pitch and roll parameters on the Advanced page of the optimizer tab in PTGui so that they will not move in subsequent runs of the optimizer.  All the other images are then added and aligned to the horizon row (using control points), and any misalignment problems dealt with one way or another.  For example, the flat tiled roof areas can probably be aligned well enough using viewpoint correction (if using PTGui Pro) .  All of this can be quite challenging, even for seasoned experts.  As Erik suggested, by all means make a set of half size jpegs available for download and post a link here (e.g. use Dropbox, or free services such as wetransfer.com, sendspace.com, .... ) and we will see what can be done.

John

Brian Koester

unread,
Jun 17, 2025, 2:07:42 PMJun 17
to pt...@googlegroups.com
This is what I get when I limit control points to the area of the horizon:

Screenshot 2025-06-17 at 11.03.02 AM.png

Her’s a link to my files. If you can figure out how to fix these then please give me a step by step process of how you did it as I have several of these I need to fix for my client. And thank you so much for helping me.





On Jun 11, 2025, at 10:15 AM, John Houghton <houghto...@gmail.com> wrote:

Brian, Clearly, there are big alignment errors due to parallax, which is responsible for the very high control point distances:

<alignment-error.png> 

When faced with images almost certainly having severe parallax issues, I find the best course of action is to first establish a solid framework consisting of just the horizontal row of images containing the horizon.  Because the horizon is so far away as to be relatively unaffected by parallax, you can place/generate control points ONLY along the most distant features near to the horizon in that row and run the Optimizer to align the images perfectly - at the horizon - i.e. in the green area:

-- 
You received this message because you are subscribed to the Google Groups "PTGui Support" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ptgui+un...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/ptgui/5ad43e21-6256-447b-a274-c2844e1f71a3n%40googlegroups.com.
<alignment-error.png><Screenshot.png>

John Houghton

unread,
Jun 17, 2025, 3:41:45 PMJun 17
to PTGui Support
Brian,  I'm afraid I cannot spare the time to do a complete stitch as I am away from home for a few days on holiday....  However, I have managed a good stitch of just the horizontal row (as I suggested as an initial step) and have attached the project file.  I first positioned the images with the "Fill yaw" option on the Source images tab.  Then I used the "Generate control points here" option to create control points targeted on far distant features in the overlap areas.  The Generate points here" option is done by dragging a selection rectangle with the shift key held down.  Then right click in the selected area and select "Generate points here".  NB, The images need to be already roughly aligned for this function to work properly.

After optimization, you then uncheck the y, p and r optimisation parameters of these images and continue by adding the remainder of the images.  Align these with the horizontal row images (and with each other) by adding appropriate control points.  I'll continue with the project when I'm back home, if necessary.

John

PANO0001 Panorama.pts

Brian Koester

unread,
Jun 17, 2025, 3:55:26 PMJun 17
to pt...@googlegroups.com
Where’s the “fill yaw option”?

Erik Krause

unread,
Jun 17, 2025, 4:13:49 PMJun 17
to pt...@googlegroups.com
Am 17.06.2025 um 21:55 schrieb Brian Koester:

> Where’s the “fill yaw option”?

Image Parameters, right click. Select the images you want to have Yaw
filled beforehand.

Erik Krause

unread,
Jun 17, 2025, 4:31:44 PMJun 17
to pt...@googlegroups.com
Am 17.06.2025 um 21:41 schrieb John Houghton:

> After optimization, you then uncheck the y, p and r optimisation parameters
> of these images and continue by adding the remainder of the images. Align
> these with the horizontal row images (and with each other) by adding
> appropriate control points. I'll continue with the project when I'm back
> home, if necessary.

I had a quick go on that. What I did in detail:
- Load John's project file.
- Disable Yaw, Roll and Pitch optimization as John described above.
- Add the remaining images.
- Choose "Generate Control Points" from the Control Points menu and
optimize. The result was bad.
- enabled Viewpoint Correction for the images in the rows below those
from Johns project file (all with only roof visible) and optimize.
- disable one image, since it causes problems and is superfluous.
- deleted all control points from the straight down image (11 in my
case) and set new ones only on the very ridge between the images, where
the ridge is centered (11-15 and 11-23 in my case), optimization showed
"good".

Find the project file attached.

There's still a problem at the drone's shadow and some roof tiles are
misaligned. This is inevitable due to parallax. Maybe you can fix this
using the Patch Tool (from Detail Viewer).

Don't shoot with a drone so close to the ground! Use a tripod with a
decent panoramic head instead.
Panorama.pts

Brian Koester

unread,
Jun 17, 2025, 5:59:05 PMJun 17
to pt...@googlegroups.com
I really appreciate the speed at which you guys are all responding to my questions. I really want to do this on my own. I don’t know what to fill, the yaw with? What am I trying to do here?

Screenshot 2025-06-17 at 2.58.08 PM.png

John Houghton

unread,
Jun 17, 2025, 6:26:18 PMJun 17
to PTGui Support
On Tuesday, June 17, 2025 at 10:59:05 PM UTC+1 Brian Koester wrote:
 I don’t know what to fill, the yaw with? What am I trying to do here?

 Brian, you are wanting to position the 8 images you select to match the shooting angles of yaw used.  So for 8 shots around, the images would be positioned at yaw angles 0, 45, 90, 135, etc.  The yaw increment is 45 degrees.  When you invoke the Fill Yaw function, it will set the yaw parameters on the Image Parameters tab automatically when you specify 8 images around with a yaw increment of 45.  Alternatively, you could simply edit the values of the yaw parameters manually, but this is somewhat arduous.

John

 

Brian Koester

unread,
Jun 17, 2025, 7:09:02 PMJun 17
to pt...@googlegroups.com
I’m trying to do this on my own so I started from scratch:

  1. Command selected to select the 8 images that showed ocean
  2. While selected, Right clicked to reset yaw
  3. Went with programs suggested yaw settings
  4. Generated control points only along horizon area 
  5. Optimized 
  6. Went to Advanced settings of Optimizer and deselected the 8 images Yaw, Pitch and Roll
  7. Aligned

This is what I got. Am I doing good so far?

Screenshot 2025-06-17 at 4.01.10 PM.png

--
You received this message because you are subscribed to the Google Groups "PTGui Support" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ptgui+un...@googlegroups.com.

Brian Koester

unread,
Jun 17, 2025, 7:14:07 PMJun 17
to pt...@googlegroups.com
Where is this found?

PTGui Support

unread,
Jun 18, 2025, 5:28:57 AMJun 18
to pt...@googlegroups.com
Hi Brian,

You can enable it in the optimizer tab; switch it to Advanced mode first.

But it's best if you watch Video tutorial # 7 here:
https://ptgui.com/videotutorials.html

Kind regards,

Joost Nieuwenhuijse
www.ptgui.com
> --
> You received this message because you are subscribed to the Google
> Groups "PTGui Support" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to ptgui+un...@googlegroups.com
> <mailto:ptgui+un...@googlegroups.com>.
> To view this discussion visit https://groups.google.com/d/msgid/ptgui/
> AC22F713-8585-4625-B766-42CD13B77047%40gmail.com <https://
> groups.google.com/d/msgid/ptgui/AC22F713-8585-4625-
> B766-42CD13B77047%40gmail.com?utm_medium=email&utm_source=footer>.

PTGui Support

unread,
Jun 18, 2025, 5:31:19 AMJun 18
to pt...@googlegroups.com
Hi Brian,

The parallax error here may just be too large. You cannot stitch both
the foreground and the background correctly.

I think the best you can achieve here is a good stitch of the
background. You would have to live with misalignments in the roof and in
the overhead wires.

Kind regards,

Joost Nieuwenhuijse
www.ptgui.com

On 6/18/25 01:08, Brian Koester wrote:
> I’m trying to do this on my own so I started from scratch:
>
> 1. Command selected to select the 8 images that showed ocean
> 2. While selected, Right clicked to reset yaw
> 3. Went with programs suggested yaw settings
> 4. Generated control points only along horizon area
> 5. Optimized
> 6. Went to Advanced settings of Optimizer and deselected the 8 images
> Yaw, Pitch and Roll
> 7. Aligned
>
>
> This is what I got. Am I doing good so far?
>
> Screenshot 2025-06-17 at 4.01.10 PM.png
>
>> On Jun 17, 2025, at 3:26 PM, John Houghton <houghto...@gmail.com>
>> wrote:
>>
>>
>> On Tuesday, June 17, 2025 at 10:59:05 PM UTC+1 Brian Koester wrote:
>>
>>  I don’t know what to fill, the yaw with? What am I trying to do here?
>>
>>
>>  Brian, you are wanting to position the 8 images you select to match
>> the shooting angles of yaw used.  So for 8 shots around, the images
>> would be positioned at yaw angles 0, 45, 90, 135, etc.  The yaw
>> increment is 45 degrees.  When you invoke the Fill Yaw function, it
>> will set the yaw parameters on the Image Parameters tab automatically
>> when you specify 8 images around with a yaw increment of 45.
>> Alternatively, you could simply edit the values of the yaw parameters
>> manually, but this is somewhat arduous.
>>
>> John
>>
>>
>> --
>> You received this message because you are subscribed to the Google
>> Groups "PTGui Support" group.
>> To unsubscribe from this group and stop receiving emails from it, send
>> an email to ptgui+un...@googlegroups.com
>> <mailto:ptgui+un...@googlegroups.com>.
>> To view this discussion visit https://groups.google.com/d/msgid/
>> ptgui/24b9d487-4db0-4449-8571-39cd3cd7cc56n%40googlegroups.com
>> <https://groups.google.com/d/msgid/
>> ptgui/24b9d487-4db0-4449-8571-39cd3cd7cc56n%40googlegroups.com?
>> utm_medium=email&utm_source=footer>.
>
> --
> You received this message because you are subscribed to the Google
> Groups "PTGui Support" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to ptgui+un...@googlegroups.com
> <mailto:ptgui+un...@googlegroups.com>.
> To view this discussion visit https://groups.google.com/d/msgid/ptgui/
> A2F63B11-EC5D-46F7-A63A-55F40C1E7DB7%40gmail.com <https://
> groups.google.com/d/msgid/ptgui/A2F63B11-EC5D-46F7-
> A63A-55F40C1E7DB7%40gmail.com?utm_medium=email&utm_source=footer>.

Brian Koester

unread,
Jun 18, 2025, 7:21:58 PMJun 18
to pt...@googlegroups.com
Erik figured it out. Thank you Erik. I know it’s possible. What I need to do is replicate what you did. I’ve done my best to transcribe the steps but I clearly have some things missing because I don’t get your results. I’ve studied your file and I see you also reordered the images. Here's my steps as best I can understand them. PLEASE let me know exactly what I’m missing so I can do this again and again because I have many more of these to do on my own. All done with a drone shot towards the ocean. And no I can’t go 40 feet up in the air above the roof and use a parallax perfect tripod.

  1. Image Parameters > Command select the 8 images that show the ocean at the horizon

  2. While selected, right-click to reset yaw with the program's suggested yaw settings

  3. Generate control points only along the horizon area 

  4. Optimize

  5. Advanced Settings of Optimizer > Choose the 8 images of the horizon area and uncheck Yaw, Pitch, and Roll

  6. Align Images

  1. Choose "Generate Control Points" from the Control Points menu

  1. Optimize

  2. Project Assistant > Enable Viewpoint Correction for all the images with only the roof visible

  3. Optimize

  4. Disable one image (because it had the highest control point errors?)

  5. Deleted all control points from the straight down image (11 in my case) and set new ones only on the very ridge between the images, where the ridge is centered (11-15 and 11-23 in my case), optimization showed "good"





On Jun 17, 2025, at 1:31 PM, 'Erik Krause' via PTGui Support <pt...@googlegroups.com> wrote:

Erik Krause

unread,
Jun 20, 2025, 12:44:58 PMJun 20
to pt...@googlegroups.com
Am 19.06.2025 um 01:21 schrieb Brian Koester:

> I know it’s possible. What I need to do is replicate what you did. I’ve done my best to transcribe the steps but I clearly have some things missing because I don’t get your results.

Ok, I'll try. For my last attempt I sarted with the project file
provided by John, but this time I'm doing it from scratch:

- Load the 8 images where the top is mostly sky into PTGui. PTGui
arranged them pretty well due to the enclosed orientation data from the
drone.

- Because of that I used "Generate Control Points for all overlapping
images".

- Not all images had control points, hence I set some manually for
those. After optimization, I could use "Generate Control Points Here"
after selecting an area and right clicked inside on Control Points tab.

- After optimization the horizon was a little crooked, hence I set some
Horizontal Line control points on the Horizon in the images where it is
visible, using the same image in the left and right pane (No. 1, 2 and
8). This straightened the horizon beautifully (after optimization - F5)

- After examining the seams in Detail Viewer (even the telephone lines
match!) I decided this ok and disabled all optimizations on Optimizer
tab, both global and per image.

- Then I added the remaining images. Again the images where roughly
aligned due to metadata. Hence I choose "Generate Control Points for all
overlapping images" again.

- On Optimizer tab (advanced interface) I set "Viewpoint" to "Optimize"
for all new images. After optimization, the result went from "good" to
"not so good", as to be expected due to parallax problems.

After that, some errors persisted, namely in the roof and in the blue
house nearby, which can be fixed in post or with the Patch tool. The
resulting project file is attached.

Other panoramas might have other difficulties, hence it would be good to
understand why any of those steps where done. Always read the hover help
for the relevant controls. If you are still in doubt, ask specifically.

> And no I can’t go 40 feet up in the air above the roof and use a
> parallax perfect tripod.
In this panorama you are not 40 feet above the roof, more likely 4 feet.
However, you minimize parallax problems if you go 400 feet up, since
then everything is pretty far away.
Panorama.pts

Erik Krause

unread,
Jun 20, 2025, 12:57:08 PMJun 20
to pt...@googlegroups.com
Am 20.06.2025 um 18:44 schrieb 'Erik Krause' via PTGui Support:

> After that, some errors persisted, namely in the roof and in the blue
> house nearby, which can be fixed in post or with the Patch tool. The
> resulting project file is attached.

The chimney is also misaligned, but since it is completely present in
one image, it can be green-masked there in order to be ok.

Brian Koester

unread,
Jun 23, 2025, 5:33:39 PMJun 23
to pt...@googlegroups.com
I want to strongly thank Erik for taking the time to lay out his steps and his thinking. That allowed me to replicate his results and then go ahead and fix 5 more panos from the same house. Along the way I was able to fix problems as they occurred from the insight I got from Erik. This is a huge win for me as I have done 5 different homes using my drone to show the view from the exact location the architect wants it from. Because I now can make these look correct for this one house, I’ll get more jobs from them. Thanks to everyone who contributed.
> --
> You received this message because you are subscribed to the Google Groups "PTGui Support" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to ptgui+un...@googlegroups.com.
> To view this discussion visit https://groups.google.com/d/msgid/ptgui/9a0605c9-b64d-43e6-946e-b5f01cf26eec%40gmx.de.

Kristof Meirlaen (Kri-Soft)

unread,
Jun 24, 2025, 2:26:16 AMJun 24
to PTGui Support
Thanks a lot for sharing your experiences as well.
I'm wondering - how are the architects using these images?

Op maandag 23 juni 2025 om 23:33:39 UTC+2 schreef Brian Koester:

Brian Koester

unread,
Jun 24, 2025, 12:12:13 PMJun 24
to pt...@googlegroups.com
The architect takes my pano and combines it with the rendering of the to be built house to show what the views would be. These are roughly 10 million dollar homes and the ocean view you get is critical to approving the design. Here’s a sample that has the pano and rendering combined. 


Sent from my iPhone

On Jun 23, 2025, at 11:26 PM, Kristof Meirlaen (Kri-Soft) <kmei...@gmail.com> wrote:

Thanks a lot for sharing your experiences as well.

Mikhail Prokopenko

unread,
Jun 26, 2025, 6:58:43 AMJun 26
to PTGui Support
Erik,

Thanks f lot for your "large-parallax pano" stiching mini tutorial. Just two general questions:

Why do we need to switch off "Global Lens Profile Optimization" after first pano row aligning? 
Is disabling Yaw-Pitch-Roll "per image" not enough?

And what is the difference (in your opinion) between "Generate Control Point" and "Generate Control Point for all overlapping images"?
I have absolutely no idea how can we generate CPs for non-overlapping images :^-)
пятница, 20 июня 2025 г. в 19:44:58 UTC+3, Erik Krause:

Erik Krause

unread,
Jun 26, 2025, 11:05:32 AMJun 26
to pt...@googlegroups.com
Am 26.06.25 um 12:58 schrieb Mikhail Prokopenko:

> Why do we need to switch off "Global Lens Profile Optimization" after first
> pano row aligning?
> Is disabling Yaw-Pitch-Roll "per image" not enough?

Because PTGui will try to adjust any misalignments it can't correct
otherwise by changing the lens correction parameters. This can throw off
alignment for the horizon images by weirdly distorting all images.

> And what is the difference (in your opinion) between "Generate Control
> Point" and "Generate Control Point for all overlapping images"?

What it says: "for all overlapping images" will restrict control point
generation to already overlapping images. But this requires the images
to be roughly aligned (f.e. by template, Fill Yaw or align to grid).

The other option is for images not already or currently not aligned.

> I have absolutely no idea how can we generate CPs for non-overlapping
> images :^-)

Well, if there are no common features, there will be no control points.
But it could well be, that images are not (yet) overlapping in PTGui,
although they show overlap in reality.

"Generate Control Points" will simply analyze all potential image pairs,
which can take quite a while on panoramas with a lot of images and is
superfluous if the images are already roughly aligned.
Reply all
Reply to author
Forward
0 new messages