Weapons guidance systems get to be simpler in many ways.
If you've seen some of the Lunar or Martian landing videos, you'll notice that it's very hard to tell the scale. Especially on the Moon, the lack of atmosphere to disturb the surface makes it fractal-like, which probably really messes with the CV algorithm. It'd work fine when high up, but as you approach for landing, it would probably struggle, especially for, say, estimating how far away the surface is.
Don't they use radar altimeters to get altitude? You don't need to rely only on image processing. You can even pull off stereo using a single camera since you are moving and know the altitude at every point.
They definitely combine several sensors to get a proper height reading, but as we've seen with the American and Japanese landers, getting good readings from the sensors, properly accounting for all factors that might affect sensor readings and being able to properly handle sensor disagreements is quite challenging.
For distance during landing I would be thinking a spatially maximally distributed array of quartz-shielded, thermally-supported laser TOF sensors along nominal extremities, but that's just because they're familiar to me, small, power-efficient, highly linear, relatively accurate, and cheap. Unsure if the IC physics assumptions work in non-atmospheric conditions. Perhaps the output can be re-scaled to obtain cheap and accurate enough readings.
A non-dilettante with an actual physics degree would clearly be desirable ;)
A kalman filter wouldn't account for say, the issue that hit the HAKUTO-R lander, where because the reading on the radar altimeter changed too rapidly, the computer assumed it was faulty, or the IM-1 lander, where they initially had a lot of trouble with altitude sensing (in part because they forgot to remove the covers from the laser rangefinders), managed to work around it, and then failed to fully sense and cancel out the lateral velocity, causing it to skid along the surface, snap a leg and tip over.
The first sounds like bad assumption (hard fault limit).
The second sounds like bad process leading to bad input, at which point it becomes garbage in, garbage out. The workaround was untested and insufficient.
While you are of course correct the filter will not fix these, none of these are the fault of the filter, they are all human process issues that are firmly out of scope.
It is a lot more difficult in space, since you don't have the atmosphere to steer for free and because fuel margins get very expensive. Being familiar with these image processing systems, I could see it being a significant challenge.
If you've seen some of the Lunar or Martian landing videos, you'll notice that it's very hard to tell the scale. Especially on the Moon, the lack of atmosphere to disturb the surface makes it fractal-like, which probably really messes with the CV algorithm. It'd work fine when high up, but as you approach for landing, it would probably struggle, especially for, say, estimating how far away the surface is.