Maybe you give RIOT a try. That is a software mainly used to reduce file-sizes, but for pictures in 3k pixel by 3k pixel it offers to reduce the dimensions of the files too. Its batch-processor offers this for any picture, regardless of the initial dimensions. What I like with RIOT is the preview in single picture-mode. This allows to optimize the settings and to see what you’ll get. It has a lot of algorithms for GIF, JPG and PNG-Pictures.
Otherwise, I can recommend IrfanView. If you reduce picture for picture or use the batch-processor is up to you.
In my eyes, the results are very good with both.
The links to both can be found here:
You can reduce the dimension of a picture also in Krita. Krita offers most of the algorithms you can find in RIOT and IrfanView, perhaps more, the results are also very good and on the same level as with the two above, but Krita has no batch processing facility as far as I know.
It can be that a plugin for Krita has a batch-processor, I think “Imagine Board” by @EyeOdin is a good candidate and could have such, but that is only a guess, and if it has, I can’t say if it uses Krita and its algorithms or has an own implementation for the task.
By the way, regardless of what you will use in the end, I would at first try to reduce the size using the Lanczos3-Algorithm, in most cases it gives superb results.
And you’ll have of course a loss of quality by this resizing-factor, but that does not mean it has to look bad.
In Krita do “Image” → “Scale Image To New Size”
Michelist