Первым успешным методом, который я обнаружил, чтобы сделать то же самое, было использование ImageMagick, но с оператором, отличным от предложенного ранее --separate/-swap.
Другой оператор - -recolor или -color-matrix, в зависимости от версии ImageMagick.
В частности, поскольку я знал "основной цвет" исходного изображения (зеленый, в вашем случае и мой), и я знал "основной цвет" в желаемом конечном изображении (синий, в вашем случае, оранжевый в моем), я дал ImageMagick '-recolor/-color-matrix опция матрица преобразования со значениями, которые отражают различия в каждом из каналов RGB.
Например, в моем случае полностью зеленый цвет был R:141 G:198 B:63, и я хотел, чтобы он был изменен на R:231 G:159 B:70. Остальные цвета хотели изменить в равной степени.
Таким образом, это означает, что я хотел, чтобы значение R новых пикселей было 231/141-ым от текущего значения красного. Зеленые значения должны быть 159/198 от текущих значений. И синие значения должны быть 63/70 от текущих значений.
Так:
convert input.png -recolor "1.638297872 0 0 0 0.803030303 0 0 0 1.111111111" output.png
или же
convert input.png -color-matrix "1.638297872 0 0 0 0.803030303 0 0 0 1.111111111" output.png
или же
Похоже, это сработало в одно мгновение после бесполезной траты времени на борьбу с Gimp/plugins и paint.net/plugins.