Продолжаем наш цикл статей про матричное программирование: первая, вторая, третья, четвертая и пятая. Для начала ответим на вопрос: является ли матричное программирование синонимом numpy-программированию? Если вы используете библиотеку numpy, то ответ будет положительным. Матричное программирование является более общим понятием, в которое входит и numpy-программирование. В задачах компьютерного зрения достаточно часто приходится иметь дело с прямоугольниками, стороны которых параллельны осям координат. Такие прямоугольники можно задать всего двумя точками, то есть четырьмя значениями. Существует несколько вариантов как это сделать. Один из них использует левый верхний и правый нижний углы, обычно он обозначается как xyxy (икс-игрек-икс-игрек). Другой, достаточно распространенный, формат определяет центр прямоугольника и его ширину и высоту - xywh. Напишем функцию преобразования из первого во второй: Все приемы, используемые в этой функции, были уже рассмотрены в предыдущих статьях, поэ