С помощью @AGNGazer на этот вопрос был дан ответ.Сначала необходимо сместить все точки вокруг центра: [0, 0] Давайте рассмотрим 2 объекта, а не 100 объектов для простоты и поворота на 90 градусов.
old_coord = np.zeros((2,8))
old_coord [0] = [500, 500, 510, 500, 510, 510, 500, 510] # only filling one is enough to show the functionality.
смещение кцентр с использованием повернутых центров изображений [1872,2808].
old_coord [:, list(range(0, 8, 2))] -= 1872
old_coord [:, list(range(1, 8, 2))] -= 2808
применить функцию @AGNGazer.
new_coord = Rotate2D(old_coord, [0, 0], 90)
смещение к центру исходного изображения [1872, 2808]
new_coord [:, list(range(1, 8, 2))] += 1872
new_coord [:, list(range(0, 8, 2))] += 2808
>>> new_coord
array([[5116., 500., 5116., 510., 5106., 510., 5106., 500.],
[0., 0., 0., 0., 0., 0., 0., 0.]])