Alenorze
@Alenorze
Не люблю Индию

Как не давать кропу выходить за рамки изображения?

Всем привет, есть x, y, h, w, с помощью них могу кропать изображения, они всегда в пределах изображения, но мне нужно добавить к каждой стороне 20%, но иногда эти 20% выходят за пределы изображения, и я получаю ошибку, как правильно сделать кропинг, чтоб он кропал, но не выходил за рамки?

x, y, w, h = cv2.boundingRect(cnt)
portrait_image = image[y:y+h, x:x+w]


5cdb7c19bbee3048942443.png
  • Вопрос задан
  • 111 просмотров
Решения вопроса 1
longclaps
@longclaps
Шо, питонолов, не научился огораживать?
center_y = y + h // 2
dh = max(min(h // 10, center_y - h * 3 // 5, image.height - center_y - h * 3 // 5), 0)
new_y, new_h = y - dh, h + 2 * dh
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы