The one I just tried with this problem was located locally in the resources folder, alongside the project file. I saw the same thing with another site last week that had also been added in the same way. As a test I just checked another that was hosted on the server and that was fine. I think it’s more likely a case of background images loaded via custom class, rather than hero blocs as such.
In a nutshell, I’ll open a project expecting to see the hero image and it’s blank, though everything else is there as expected. I can easily locate and add the images again via the asset manager, but maybe come back a month or two later and find it is gone again.
I think these were all sites that started life under Blocs 3 if that gives you any clues. They haven’t yet been converted to BS5, so that is not the issue.