Some Refinements to the Gimbal Sim

what's important is to check if Sitrec has the right motion angle, because it includes the additional dero formula, for both GoFast and Gimbal.
I think Mick was saying it is correct now? and the formula is/ was different?, Gimbal V Go Fast.
The GoFast camera code is different from the Gimbal camera code. Gimbal was the original app that Sitrec grew from, and there's still a bunch of code in there that's Gimbal-specific, including the horizon adjustment.
But then he added code so that it now has rotation?
the GoFast camera was not rotated, which was incorrect, and made the motion of the ocean not match the video.

Background motion is important in determining the correct method fully agree, I don't subscribe to the formula giving the correct motion for the above reasons but is it possible to get an explanation of why the formula is preferred or how that conclusion was arrived at?

The fact that it greatly improved the background motion angle would seem to validate its correctness.
 
I don't see how it's been greatly improved with LBF formula
I was pointing out the boat has no rudder, why i used so many question marks and used the word think, "I think mick was saying".

It is near impossible to follow what has been done (it was updated and i did a comparison on the exported footage provided and it didnt have a dynamic background motion range etc),

So we can rule out the formula method as being the correct one, as it doesn't change (I tested micks new method, TWICE, and it varies by only two degrees, so still unrealistic.

what hasn't been done, what is correct, what has been updated, what is being relied upon to support decisions and claims (additionally, why am I being asked to put vector operations in when its not even my claim).

IE
- there were two different code rotations for gimbal and go fast, despite it being the same pod,
- that the formula created some background motion that (seems subjective to me but) it, allegedly, validates its correctness,
- background motion was used to justify updating the code, and in that case it is apparently important, but its not important when it came to determining the correct method (bank tilt V formula).

Same with me making remarks that the only thing the, gimbal a new analysis, had only one job showing "its glare", and when data is provided challenging that, its i will come back later.

I apologise for any confusion.
 
Last edited:
There isn't enough angle versus the real vid initially, then the angle reduces with bank in the real vid, but it increases in the sim.

I just notice it and I do not know if this is the result of adding LBF/dero formula in Sitrec-GoFast, but there is something very wrong with the angle of background motion in GoFast.

In the real vid the ocean crosses the FOV at an angle, and when the plane banks to the left, there is a CW rotation of the background (logical, like in Gimbal, like when you tilt a camera or your head CCW).

In the sim, the background rotates CCW with bank to the left, that's not what I call pilot's comfort...

EDIT: this is indeed after the "horizon fix"
https://www.metabunk.org/threads/some-refinements-to-the-gimbal-sim.12590/post-358731
 
Last edited:
This is the opportunity to test the new export video function, it's cool, it works well on my end (Windows 10/Chrome).

Here is the problem with background motion I'm talking about in my previous post.
 
Last edited by a moderator:
1767401433893.jpg


Qualifying my remarks with regards to background motion angle is resrictive compared to Bank Tilt for go fast. 7 ish degrees of variance for Formula, 19 ish degrees for bank tilt.
If I'm not getting confused (which I may), does that mean that if the additional dero is at work in GoFast, background motion angle would only change by 7° over the course of the video, versus 19° if it doesn't exist?

By how much does background motion rotate in total? Has this been measured?
 
Here is the problem with background motion I'm talking about in my previous post.
Yes, it's not quite right. GoFast has always been a bit of fiddly one.

I'm (slowly) working on tools around these issues. Like, background motion tracking:
https://www.metabunk.org/sitrec/?custom=https://sitrec.s3.us-west-2.amazonaws.com/1/GoFast Motion Tracking/20260103_212421.js

(not actually hooked up to anything)

Look view panorama generation
2026-01-03_13-29-10.jpg

Which looks rather boring for GoFast, and does not work for Gimbal (as there's no distance to project onto)

I will (eventually) combine the two to auto-generate panoramas from videos - although for GoFast it's not really tracking very well.

There's also the background flow indicator:

2026-01-03_13-35-49.jpg


Which is essentially the equivalent of motion tracking, but for the look view.

As I said, I'm doing things that have more general utility for Sitrec, so it will take some time before I get around to applying them to Gimbal and GoFast, which have a lot of old specific code (Gimbal in particular)
 
Last edited:
2026-01-03_13-29-10.jpg

Which looks rather boring for GoFast, and does not work for Gimbal (as there's no distance to project onto)
Is that a straightline, for the tracked portion? like this?
metabunkpanorama2_full_borders (1) - Copy.jpg

Because, with the plane in a bank, there is no motion from the curved path from the plane?

"as the plane banks and turns toward the target, the direction the camera is pointing (still locked on the target) starts swinging in an arc. Because the plane is curving its path through the air while closing in, the spot on the ground that the camera is "looking past" the target traces a curved path."

The plane has a ~12 degree heading change from frame 370, tracked portion, to the end.

Screenshot (4207).png


[edit to include plane heading change from frame 370 to end]
 
Last edited:
just checking the Sitrec for Go Fast (legacy)

And the water path looks like its curved to me, similar to the planes path being an arc.


Screenshot (4208).png


Just running a straight line, from start of tracking to end, and it looks more like what I retrieve using bank tilt

Screenshot (4208).png


Bank tilt Panorama below in thumbnail view

003.jpg

[edit- updated for comparison to bank tilt method panorama]
 
If I'm not getting confused (which I may), does that mean that if the additional dero is at work in GoFast, background motion angle would only change by 7° over the course of the video, versus 19° if it doesn't exist?

By how much does background motion rotate in total? Has this been measured?

The amount of change in background motion angle predicted by the additional/LBF dero isn't nearly close to what we see in GoFast (sharp rotation of about 10° during first bank). The bank/tilt formula is really close, on the other hand.

So until proven otherwise, and because it is unsupported by the data in both Gimbal and GoFast, I'll consider it's out of the equation to explain cloud mismatch in Gimbal. The whole refinement to the sim is not justified and unrealistic.

(It's also backwards in the GoFast sim at the moment so even more irrelevant).
 
Deciding to do a simple experiment, with parallels to go fast, I went in to my backyard and tested the "idea" that moving a camera in a curved path results in a straight line path for the features seen in the footage.

1. Go fast plane flies a curved path, here I walk a curved path.
2. We can see three trees, while i film, in go fast we see water features.
3. plotting out, via the formula, not only do i get a straight line path, but evidently so does mick (confirming my recreation in the process), but when i went to check for a straight line path...
4. My little experiment demonstrates that walking a curved path and filming doesn't result in a straight line path between the start and the end, which is what bank and tilt method results in.


Source: https://x.com/LathanielS5437/status/2007651867275472966


because it is unsupported by the data in both Gimbal and GoFast, I'll consider it's out of the equation to explain cloud mismatch in Gimbal. The whole refinement to the sim is not justified and unrealistic.
The formula simply fails at every step, I appreciate the effort those involved in the formula have put in, but "debating" vector operations (which I suspect is the reason why everything goes screwy), is pointless, the proof is in the pudding as they say (testing methods on an appropriate video to determine the correct method), so unless an actual example demonstrating why the formula is correct can be provided, and why the footage is NOT rotated at 1 to 1 to the bank angle, go fast there isnt the rotation required to even match the bank angle, and hence the skewed artificial horizon, I'm voting with @TheCholla , the formula is out of the equation to explain anything in gimbal.

Screenshot (4206) - Copy.png


[edit - additional context]
 
Last edited:
I try follow a little what's said on X because most everyone is silent here.
Although this is where peer-review is supposed to happen according to Mick...

1767557382488.png


@logicbear I'm really curious where this comes from. How does your derotation formula directly result from the patent?
Because I have read it and I don't remember seeing a discussion of how derotation is calculated.

If this is allegedly validated by the patent, how can the derotation be so wrong in Sitrec-GoFast?
 
@logicbear I'm really curious where this comes from. How does your derotation formula directly result from the patent?
I said the pod horizon formula, which calculates the angle of the horizon in the pod's eye view without dero, not the human horizon one which I wrote. It's from a different patent that you showed me:
Article:
some tactical airborne IR systems are forced to locate the IR and visible sensors and laser off of the gimbals using an optical relay path, such as in the Advanced Targeting FLIR (ATFLIR) system. In order to re-establish an ideal configuration, a pseudo on-gimbal IR sensor and laser configuration must be implemented, such as by using the principles of the present invention, with an active auto-alignment scheme with the use of miniature two-axes mirror technology.
An active auto-alignment mirror configuration is in effect equivalent to having the IR sensors and auxiliary components, such as the laser, mounted on the stabilized gimbal.
That is exactly the assumption behind the pod horizon formula. We know that the imager/sensor is inside the EOSU but in the back, technically only rotating with roll, not pitch/yaw. But the mirror setup inside the pod without the dero makes it so that it's still *as if* the imager were rotating along with the front window of the pod, affected by all of the gimbal axes. Jeremy confirmed the pod does have an auto-alignment system, so it seems like this would apply.
The frustum roll was advertised as a method of accounting for "camera tilt due to plane's pitch". But the pod horizon formula already accounts for that and you get a different result as you see from my last post comparing the two. So where does that difference physically come from ? How exactly does the frustum roll formula result from a 3D model of the jet/pod/horizon ? That's why I asked for an implementation of the frustum roll in more detail using 3D vectors, because it might reveal that the formula is not actually doing what was advertised, or it's doing it in some completely different way that is not in line with that patent.
 
You include a different set of assumptions than what the model in Sitrec is making.
Yes, we all agree that bank and camera tilt is in the footage, the only two things we are correcting for


your model is wrong while Sitrec could be right
Thats why we tested both methods on the Go Fast footage, and the Metabunk formula has failed to adequately de-rotate that footage, Sitrec is wrong

Generate a vector that represents the horizon in the distance, project it onto the imager, then calculate the angle between the edge of the imager and that projected horizon.
I say the pod is working fine and not using these internal mirrors to look somewhere the pod isnt pointed.


If instead you could provide source code that generates the video then there would be no ambiguity
Simple,
1. Calculate the bank, remove that from the footage
2. Calculate how much pitch the plane has for its bank angle, based on 3.6 degrees for level flight, calculate, using the pitch value and Az value how much the camera is tilted, remove that.

But the pod horizon formula already accounts for that and you get a different result as you see from my last post comparing the two.
Again, instead of arguing about what method is used on gimbal, we test both methods on another vide, Go Fast, ten minutes earlier, same pod, same plane, same systems, same crew, we couldnt ask for a better litmus test.
 
@logicbear When we level on just the planes artificial horizon, we see the clouds are at an angle, what objective method, not subjective, what objective method did you use to determine that the motion angle of the clouds, ISNT a result of elevation change, BUT, was the defining factor for you to say, "there is additional camera rotation needed"?



Screenshot (3884).png
 
Last edited:
I try follow a little what's said on X because most everyone is silent here.
Although this is where peer-review is supposed to happen according to Mick...
It is, and it happened...3-4 years ago. Most everyone is silent here because multiple analyses point to a distant aircraft, with the rotation almost certainly happening at the camera.

This thread reminds me of the "missing jolt theory" of the collapse of the Twin Towers — a very weedy late-arriving idea that misses the big picture and which requires a stack of unphysical assumptions even to be relevant. Except that this thread is about only one of hundreds of UFO cases. With a few exceptions, the UFO people have moved on.
 
It is, and it happened...3-4 years ago. Most everyone is silent here because multiple analyses point to a distant aircraft, with the rotation almost certainly happening at the camera.
And recently we have a much simpler explanation for de-rotation of the footage, one that is demonstrated to be correct as per the side by side testing on Go Fast and that now removes the possibility of a distant plane and it being glare.
 
Heres the Full Panorama Edward

panorama1_full_borders (1) - Copy.jpg


what objective method, not subjective, what objective method did you use to determine that the motion angle of the clouds, ISNT a result of elevation change, BUT, was the defining factor for you to say, "there is additional camera rotation needed"?

Perhaps Edward can explain why it means "camera rotation" and NOT pod elevation change?

https://www.metabunk.org/threads/some-refinements-to-the-gimbal-sim.12590/

This thread addressing the need for "Pilots comfort" rotation is, a few years old, so please demonstrate the objective methodology in determining that.
 
@Edward Current you have to look at the angle of cloud motion.

As far as the review having been done years ago, there is very little contradiction/debate happening on this forum, but a lot of group thinking. Which has led to rushed conclusions and approximations. The "refinement to the sim" is a good illustration, it's unsupported by the evidence.
 
using the pitch value and Az value how much the camera is tilted
You are making a mathematical/physical claim that if you apply your formula then it will result in the physical angle between the edge of the imager and the real horizon projected onto the imager. That is a claim you need to demonstrate mathematically, providing a physical model that it results from. If your math is wrong, and it looks like it might be, then it doesn't matter how much you like the results, it doesn't matter that you think it works for whatever video, the contribution required to derotate the image would still need to come from elsewhere, not from how much the camera is tilted due to pitch and Az.

I don't think you have a solid basis for your claim that your formula works for Gimbal. It only rotates the background by 11 degrees while the cloud motion rotates by 19. You are just assuming that massive difference somehow results from a change in elevation, but maybe that's not it and others have raised concerns that your panoramas might just be stitching artifacts.
 
Last edited:
@logicbear your hypothetical dero is unsupported by the evidence, in both Gimbal and Gofast for which dero goes the wrong way. How is this supposed to be compelling?

Unless you prove it, there is no justification for your dero algorithm, period.
 
providing a physical model that it results from.
Again, I am claiming the pod is working fine, the pod isnt using the internal mirrors that are CLAIMED as A POSSIBILITY (Not certainty) that you are relying upon.


Source: https://youtu.be/qsEjV8DdSbs?t=732


Should be cued up "Could be used", "They can be used", "I suspect whats going on, is its trying to minimise", "pod is using bank and not the roll axis", Everything you are saying is based on an assumption, thats why testing both methods is crucial, to determine the facts.

others have raised concerns that your panoramas might just be stitching artifacts.
Which is why I went an implemented feature tracking, demonstrated how it works, and also tested it on go fast, both methods, and the formula resulted in a straight line path (noting that it certainly appears Mick has confirmed it with his motion tracking path of go fast), as opposed to a curved path that is in the bank tilt method, as well as being the expected result of a plane in a bank, flying an arc.


"as the plane banks and turns toward the target, the direction the camera is pointing (still locked on the target) starts swinging in an arc. Because the plane is curving its path through the air while closing in, the spot on the ground that the camera is "looking past" the target traces a curved path."

Whilst I appreciate the commentary, without evidence,

If your math is wrong, and it looks like it might be,
Can you address,
1. How you were able to determine, when you looked at the clouds at an angle, that it ISN'T an elevation change but camera rotation for "pilots comfort"
2. Why, when tested on Go Fast, the formula results in a straight line path? and why that is accurate.
 
internal mirrors that are CLAIMED as A POSSIBILITY (Not certainty)
The internal mirrors are there. They are certainly used to traverse the singularity. Exactly how they are programmed is unclear, but you can't say they don't exist.
 
Any chance @Mick West would like to answer these questions? One of which I have been asking about for just over a month.

Can you address,
1. How you were able to determine, when you looked at the clouds at an angle, that it ISN'T an elevation change but camera rotation for "pilots comfort"
2. Why, when tested on Go Fast, the formula results in a straight line path? and why that is accurate.

From December 4

How did you determine, that the pod wasnt affected by elevation change, still kept within a 1 degree range.
 


For my fun weekend project, I hooked up OpenCV tracking in Sitrec to create this animated panorama of GoFast, best viewed full screen (it's 4K). Now this is just using pixel offset, not actual az/el for the projection.

And here's a panorama I generated using the movement of the intersection of the camera with the ground, using the old GoFast code with what I thought was the "human_horizon" patched in.
2026-01-04_15-29-53.jpg

Clearly, it seems backwards, which is interesting. More on that in days to come, I'm sure. But to quickly address a point above:

Which is why I went an implemented feature tracking, demonstrated how it works, and also tested it on go fast, both methods, and the formula resulted in a straight line path (noting that it certainly appears Mick has confirmed it with his motion tracking path of go fast), as opposed to a curved path that is in the bank tilt method, as well as being the expected result of a plane in a bank, flying an arc.
The original video is pretty darn straight, but not entirely - which is also what Sitrec Gofast is, just the other way around. If I flip and rotate it (and beware here, these are panoramas done with different methods to different data, so the scale is off), then we get what looks like the same path - which makes me suspect I did something wrong when I patched GoFast with Gimbal code, but maybe it means something else. Fascinating.

2026-01-04_15-53-53.jpg

Video and Sitrec Gofast (flipped) together. Note, they both have the same slight curve in the "straight" portion.


So, this "bank tilt method", what would that do with this type of panorama?

I'm pleasantly surprised how well the motion tracking turned out. I think it might be useful elsewhere, and the OpenCV stuff should be expandable to doing object tracking to stabilize lights in the sky, so it's reasonably productive.
 
Really nice.

Now this is just using pixel offset, not actual az/el for the projection.
I am doing the same, and then using the panorama, ground positions, as the base and moving the plane position to get the Az/ El to fit it, determining the actual wind direction and wind speed impacting the F-18.

[...]
 
Last edited by a moderator:
which makes me suspect I did something wrong when I patched GoFast with Gimbal code, but maybe it means something else. Fascinating.
As I suspected, I got the sign wrong, something that often happens as all code like this ends up mixing conventions of which way is positive rotation. and also here where rotating the camera one way rotates the scene the other way, so the camera angle is the negative of the horizon angle.

The code in Gimbal was:
JavaScript:
export function getIdealDeroFromFrame(frame) {
    const horizonAngle = get_real_horizon_angle_for_frame(frame)
    const podHorizonAngle = getPodHorizonAngleFrame(frame)
    const deroNeeded = podHorizonAngle - horizonAngle
    return deroNeeded
}

I had, for GoFast, my recent patch:

JavaScript:
apply(f, objectNode) {
const humanHorizon = [I]get_real_horizon_angle_for_frame[/I](f);
const camera = objectNode.camera;
camera.rotateZ([I]radians[/I](humanHorizon));
}

When it should have been negative.

This gives the same-shaped curve, just too flat. But that's a problem for another day.
 
This gives the same-shaped curve, just too flat. But that's a problem for another day.
Can you elaborate on that? the new working formula implementation is giving a straight line in the de-rotation for go fast? What do you mean by "flat"?

Are you getting what I got for the formula ocean path?

And as a follow up, why is this a problem for another day? Qualifying that remark, as correct de-rotation for gimbal will determine what the target is responsive to, will end the debate of glare V real object, why is this a low priority?

code like this ends up mixing conventions of which way is positive rotation.
I am glad that is now sorted out in the software, and I can relate to the feeling of, the code flicking the rotation, and it now being resolved.
 
For my fun weekend project, I hooked up OpenCV tracking in Sitrec to create this animated panorama of GoFast, best viewed full screen (it's 4K). Now this is just using pixel offset, not actual az/el for the projection.

Improved it a bit, now gives a pretty solid representation of the ocean surface. Bright patch is where the B/W is inverted.

motion_panorama_custom_2026-01-06T23-19-24 copy.jpg


4K video, best done full screen
 
So this is Gimbal stabilized on the artificial horizon
2026-01-06_17-18-46.jpg

A katana shape, which I think is more liket an artifact of the dero angle than the clouds, but we shall see.


Interesting, if you scrub through it, zoomed in a bit full screen, you can really see the rotation of the clouds. I think that's something that would be nice to eventually extract data from.

Motion Analysis under the View menu.

https://www.metabunk.org/sitrec/?custom=https://sitrec.s3.us-west-2.amazonaws.com/99999999/GImbal arifical horizon Tracking Pano/20260107_011418.js
 
Last edited:
Compare to the Sitrec version
motion_panorama_custom_2026-01-07T18-06-32.png



Slightly janky as I used a screen recording (which skips frames) and the rotation isn't exactly centered. But we get the same basic Katana shape. I'll refine it later. This might be a useful model validation - of course it makes assumptions about the clodus being a distant flat layer, which is uncertain.
 
You have more rotation in the clouds than in the stitch from the real video, because the katana shape (from misaligned horizons) is from forcing the dero, versus decreasing elevation angle.
 
You have more rotation in the clouds than in the stitch from the real video, because the katana shape (from misaligned horizons) is from forcing the dero, versus decreasing elevation angle.
Or because the simulation isn't exactly modelling reality. Do you have a better sim that includes clouds?
 
The problem of the 3-D reconstructions showing too much arching motion is old, I had raised it back in 2022 when @Edward Current was doing his work, I think you also mentioned it in his thread at the time.
 
Back
Top