Есть несколько проблем.
1.) Точки не упорядочены правильно для вашей формулы для работы. Я предполагаю, что они должны быть упорядочены следующим образом: (точки должны быть упорядочены так, чтобы у вас была линия прямоугольника между двумя точками, смежными в списке, и последней и первой записью в списке)
points = [[183, 291], [378, 387], [479, 150], [317, 80]]
2.) В вашей формуле есть ошибка. (Я предполагаю, что формула должна быть такой, которая находит среднюю точку линии или в этом случае среднюю точку диагонали между точкой 0 и точкой 2).
Это должно быть
cx = (coord[idx1][0] + coord[idx2][0]) / 2
cy = (coord[idx1][1] + coord[idx2][1]) / 2
where idx1, idx2 are either 0,2 or 1,3
Для прямоугольника cx cy будет одинаковым независимо от того, используете ли вы idx1 = 0, idx2 = 2 или idx1 = 1, idx2 = 3
3.) Эта формула (середина диагонали) определяет центроид только для прямоугольников. То, что у вас есть, это четырехугольник, который почти, но не совсем прямоугольник, поэтому формула не применяется вообще.
Попробуйте вычислить cx, cy с idx1, idx2 = 0, 2 и с idx1, idx2 = 1, 3, и вы увидите, что вы получаете разные результаты. Таким образом, у вас нет прямоугольника.
Либо есть опечатка в координатах, которую вы разместили, либо, возможно, ошибка в формуле, которая вычислила ваш прямоугольник, или ваш вопрос действительно предназначен для вычисления центроида четырехугольник, который отличается. В этом случае было бы целесообразно изменить название вопроса
Вы можете найти формулу для многоугольника здесь https://en.wikipedia.org/wiki/Centroid#Of_a_polygon