single
Базові Трансформації
Свайпніть щоб показати меню
OpenCV (Open Source Computer Vision Library) — потужна бібліотека з відкритим кодом, розроблена для задач комп'ютерного зору та обробки зображень у реальному часі. Вона надає інструменти для маніпулювання зображеннями, виявлення об'єктів і навіть роботи з моделями глибокого навчання.
Зчитування та відображення зображення
Перед виконанням трансформацій спочатку завантажте та відобразьте зображення за допомогою OpenCV. Фото вже імпортовано. Але на вашому локальному комп'ютері для простого зчитування та відображення фото слід використати:
import cv2
image = cv2.imread('path/to/image.jpg')
cv2.imshow('Image title', image)
Зміна розміру зображення
Зміна розміру корисна для масштабування зображень вгору або вниз із збереженням співвідношення сторін (параметри fx та fy),
де fx та fy визначають коефіцієнти масштабування для ширини та висоти.
resized_image = cv2.resize(image, fx=0.7, fy=0.5)
Можна також вказати точні розміри в пікселях (параметр dsize),
де dsize — це (new_y, new_x) форма вихідного зображення.
resized = cv2.resize(image, (100, 100))
Обертання зображення
Для обертання зображення на певний кут використовується cv2.getRotationMatrix2D() та cv2.warpAffine().
cv2.getRotationMatrix2D(center, angle, scale)визначає матрицю обертання;cv2.warpAffine(image, matrix, output_size)застосовує трансформацію.
height, width = image.shape[:2]
centre = (width // 2, height // 2)
rotation_matrix = cv2.getRotationMatrix2D(centre, 180, 1)
rotated = cv2.warpAffine(image, rotation_matrix, (width, height))
Обрізання зображення
Обрізання дозволяє виділити певну область зображення. Використовується зріз NumPy.
Синтаксис image[start_y:end_y, start_x:end_x] вибирає область інтересу.
cropped = image[450:500, 250:350]
Swipe to start coding
Вам надано image:
- Змініть розмір зображення до форми
(100, 100)та збережіть у зміннуresized; - Витягніть
heightтаwidthіз зображення; - Обчисліть
centerна основіheightтаwidth; - Створіть матрицю обертання та збережіть її у змінну
rotation_matrix; - Поверніть зображення на 90 градусів за годинниковою стрілкою та збережіть у змінну
rotated; - Обріжте область X: 250-600 та Y: 100-450 зображення та збережіть у змінну
cropped.
Рішення
Дякуємо за ваш відгук!
single
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат