Так у Вас сферическая панорама 2:1. Тогда можно утилитой перевести ее в vertical cross и оттуда легко нарезать. Или писать самому, придется немного повозиться. Для каждого пикселя (x, y) сначала находите 2 угла
theta = (y - middle_y) / size_y) * PI;
phi = (x - middle_x) / size_x * PI * 4;
Потом из полярных в декартовы
x1 = cos(theta) * sin(phi)
y1 = sin(theta);
z1 = cos(theta) * cos(phi)
Дальше длинный/нудный switch, расписывать не буду, смысл такой: напр z1 по модулю оказалось максимальным - тогда если z1 < 0, то это задняя стенка куба, а если z1 > 0 то передняя. Аналогично если maxX > 0 то правая стенка, иначе левая.
Когда узнали стенку, делите x1, y1, z1 на макс модуль и отбрасываете ненужную координату, напр передняя стенка - остаются только x и y. Переводите их в координаты имеджа.
Ну и конечно все это для приличных картинок (хотя бы 2k x 1k), на тех что Вы показали ничего хорошего не получить