Рабочий процесс для изменения размера и обрезки изображения, взвешенного по координате - PullRequest
1 голос
/ 26 мая 2010

Я работаю над рабочим процессом изменения размера и кадрирования, чтобы разрешить изменение размеров изображений и их обрезку до определенного размера. Обычно один размер изменяют наименьшее измерение, чтобы соответствовать целевому размеру, и затем обрезают, чтобы получить, например. квадрат.

Однако в этом случае у меня есть некоторые дополнительные данные обнаружения лица: face_x, face_y и face_width и face_height. Координаты X и Y лица - это верхняя левая точка на исходном рисунке, где начинается лицо.

Я хочу, чтобы обрезанная область была в центре лица, а не в центре изображения.

Есть какие-нибудь умные умы, которые могут мне помочь? Спасибо!

1 Ответ

1 голос
/ 26 мая 2010

Центр лица

(face_x + face_width/2, face_y+face_height/2).  

Если вы хотите, чтобы изображение было (w, h) в конце, то в верхнем левом углу будет

(face_x + (face_width - w)/2, face_y + (face_height - h)/2)
...