Документы | Раздор | Твиттер | LinkedIn
Albumementations — это библиотека Python для увеличения изображений. Увеличение изображения используется в задачах глубокого обучения и компьютерного зрения для повышения качества обученных моделей. Целью увеличения изображения является создание новых обучающих выборок из существующих данных.
Вот пример того, как вы можете применить некоторые дополнения на уровне пикселей из Albumementations для создания новых изображений из исходного:
Полная поддержка компьютерного зрения : работает со всеми основными задачами CV, включая классификацию, сегментацию (семантику и экземпляры), обнаружение объектов и оценку позы.
Простой, унифицированный API : один согласованный интерфейс для всех типов данных — изображений RGB, оттенков серого, мультиспектральных изображений, масок, ограничивающих рамок и ключевых точек.
Богатая библиотека дополнений : более 70 высококачественных дополнений для улучшения ваших тренировочных данных.
Быстро : стабильно считается самой быстрой библиотекой дополнений с оптимизацией для производственного использования.
Интеграция глубокого обучения : работает с PyTorch, TensorFlow и другими платформами. Часть экосистемы PyTorch.
Создано экспертами : создано разработчиками с большим опытом работы в соревнованиях по компьютерному зрению и машинному обучению.
Альбументация процветает благодаря вкладу разработчиков. Мы ценим наших спонсоров, которые помогают поддерживать инфраструктуру проекта.
? Золотые спонсоры |
---|
Ваша компания может быть здесь |
? Серебряные спонсоры |
---|
? Бронзовые спонсоры |
---|
Ваше спонсорство — это способ сказать «спасибо» сопровождающим и участникам, которые тратят свое свободное время на создание и поддержку альбомов. Спонсоры указаны на нашем веб-сайте и в README. Просмотр уровней спонсорства на странице спонсоров GitHub
Альбоментации
Системная информация
Параметры тестирования
Версии библиотеки
Семантическая сегментация набора данных Inria
Медицинская визуализация
Обнаружение объектов и семантическая сегментация в наборе данных Mapillary Vistas
Увеличение ключевых точек
Преобразования на уровне пикселей
Преобразования пространственного уровня
См. также
Я новичок в увеличении изображений
Я хочу использовать альбументации для конкретной задачи, такой как классификация или сегментация.
Я хочу знать, как использовать Альбументации с платформами глубокого обучения.
Я хочу изучить дополнения и увидеть альбументации в действии.
Текущий сопровождающий
Почетные члены основной команды
? Стать спонсором
Почему альбументации
Проект, управляемый сообществом, при поддержке
Оглавление
Авторы
Установка
Документация
Простой пример
Начиная
Кто использует Альбументации
Список дополнений
Еще несколько примеров дополнений
Результаты сравнительного анализа
Сравнение производительности
Содействие
Сообщество
Цитирование
Владимир Иванович Игловиков | Каггл Грандмастер
Михаил Дружинин | Каггл Эксперт
Алекс Паринов | Каггл Мастер
Александр Буслаев | Каггл Мастер
Евгений Хведченя | Каггл Грандмастер
Для работы с альбомами требуется Python 3.9 или выше. Чтобы установить последнюю версию из PyPI:
pip install -U альбументации
Остальные варианты установки описаны в документации.
Полная документация доступна по адресу https://albumentations.ai/docs/ .
импортировать альбументации как Aimport cv2# Объявить конвейер расширенияtransform = A.Compose([A.RandomCrop(width=256, height=256),A.HorizontalFlip(p=0.5),A.RandomBrightnessContrast(p=0.2), ])# Считайте изображение с помощью OpenCV и преобразуйте его в цветовое пространство RGBimage = cv2.imread("image.jpg")image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)# Дополните изображениеtransformed = Transform(image=image)transformed_image = преобразовано["изображение"]
Начните со вводных статей о том, почему увеличение изображений важно и как оно помогает создавать более качественные модели.
Если вы хотите использовать Альбументации для конкретной задачи, например классификации, сегментации или обнаружения объектов, обратитесь к набору статей с подробным описанием этой задачи. У нас также есть список примеров применения альбументаций для различных случаев использования.
У нас есть примеры использования Альбументаций вместе с PyTorch и TensorFlow.
Проверьте онлайн-демо-версию библиотеки. С его помощью вы сможете применять аугментацию к разным изображениям и видеть результат. Кроме того, у нас есть список всех доступных дополнений и их целей.
Список статей, в которых цитируются альбомы.
Проекты с открытым исходным кодом, использующие альбомации.
Преобразования на уровне пикселей изменят только входное изображение и оставят без изменений любые дополнительные цели, такие как маски, ограничивающие рамки и ключевые точки. Список преобразований на уровне пикселей:
Аддитивный шум
Расширенное размытие
Автоконтраст
Размытие
КЛЭ
Отсев канала
КаналПеремешать
Хроматическая аберрация
ЦветДжиттер
Расфокусировка
Уменьшение масштаба
Тиснение
Уравнять
FDA
НеобычныйPCA
FromFloat
ГауссШум
Гауссово размытие
СтеклоРазмытие
ГистограммаСопоставление
ОттенокНасыщенностьЗначение
ISOШум
Освещение
Сжатие изображения
Инвертировать изображение
Медианное размытие
ДвижениеРазмытие
Мультипликативный шум
Нормализовать
Адаптация распределения пикселей
Планковский джиттер
ПлазмаЯркостьКонтраст
Плазменная Тень
Постеризовать
RGBShift
СлучайныйЯркостьКонтраст
Случайный туман
СлучайнаяГамма
СлучайныйГравий
СлучайныйДождь
Случайная Тень
СлучайныйСнег
СлучайныйСолнцеВспышка
СлучайныйТонКривая
ЗвонокПеререгулирование
СольИПерец
Заточка
Шум выстрела
Соляризировать
Брызги
Суперпиксели
ШаблонПреобразование
Текстовое изображение
ToFloat
ToGray
ТоРГБ
ТоСепия
Нерезкая маска
МасштабированиеРазмытие
Преобразования пространственного уровня одновременно изменят как входное изображение, так и дополнительные цели, такие как маски, ограничивающие рамки и ключевые точки. В следующей таблице показано, какие дополнительные цели поддерживаются каждым преобразованием.
Трансформировать | Изображение | Маска | BBoxes | Ключевые моменты |
---|---|---|---|---|
Аффинный | ✓ | ✓ | ✓ | ✓ |
BBoxSafeСлучайныйУрожай | ✓ | ✓ | ✓ | ✓ |
ЦентрОбрезка | ✓ | ✓ | ✓ | ✓ |
ГрубыйВыпадение | ✓ | ✓ | ✓ | ✓ |
Обрезать | ✓ | ✓ | ✓ | ✓ |
CropAndPad | ✓ | ✓ | ✓ | ✓ |
ОбрезатьNonEmptyMaskIfExists | ✓ | ✓ | ✓ | ✓ |
Д4 | ✓ | ✓ | ✓ | ✓ |
ЭластикПреобразование | ✓ | ✓ | ✓ | ✓ |
Стирание | ✓ | ✓ | ✓ | ✓ |
Маскирование частоты | ✓ | ✓ | ✓ | ✓ |
Искажение сетки | ✓ | ✓ | ✓ | ✓ |
GridDropout | ✓ | ✓ | ✓ | ✓ |
СеткаЭластичныйДеформировать | ✓ | ✓ | ✓ | ✓ |
ГоризонтальныйФлип | ✓ | ✓ | ✓ | ✓ |
Лямбда | ✓ | ✓ | ✓ | ✓ |
Самый длинныйМаксимальный размер | ✓ | ✓ | ✓ | ✓ |
МаскаВыпадение | ✓ | ✓ | ✓ | ✓ |
Морфологический | ✓ | ✓ | ✓ | ✓ |
Нет операции | ✓ | ✓ | ✓ | ✓ |
Оптические искажения | ✓ | ✓ | ✓ | ✓ |
НаложениеЭлементы | ✓ | ✓ | ||
Подушка | ✓ | ✓ | ✓ | ✓ |
PadIfNeeded | ✓ | ✓ | ✓ | ✓ |
Перспектива | ✓ | ✓ | ✓ | ✓ |
КусочноАффинный | ✓ | ✓ | ✓ | ✓ |
Выпадение пикселей | ✓ | ✓ | ✓ | ✓ |
Случайное кадрирование | ✓ | ✓ | ✓ | ✓ |
СлучайныйCropFromBorders | ✓ | ✓ | ✓ | ✓ |
Случайный урожайNearBBox | ✓ | ✓ | ✓ | ✓ |
СлучайнаяСеткаПеремешать | ✓ | ✓ | ✓ | ✓ |
СлучайныйИзмененный размерОбрезка | ✓ | ✓ | ✓ | ✓ |
СлучайныйПоворот90 | ✓ | ✓ | ✓ | ✓ |
Случайный масштаб | ✓ | ✓ | ✓ | ✓ |
Случайный размерBBoxSafeCrop | ✓ | ✓ | ✓ | ✓ |
Обрезка случайного размера | ✓ | ✓ | ✓ | ✓ |
Изменить размер | ✓ | ✓ | ✓ | ✓ |
Поворот | ✓ | ✓ | ✓ | ✓ |
SafeRotate | ✓ | ✓ | ✓ | ✓ |
ShiftМасштабПоворот | ✓ | ✓ | ✓ | ✓ |
НаименьшийМаксимальныйРазмер | ✓ | ✓ | ✓ | ✓ |
ТонкаяПластинаСплайн | ✓ | ✓ | ✓ | ✓ |
Маскирование времени | ✓ | ✓ | ✓ | ✓ |
ВремяОбратное | ✓ | ✓ | ✓ | ✓ |
Транспонировать | ✓ | ✓ | ✓ | ✓ |
ВертикальныйФлип | ✓ | ✓ | ✓ | ✓ |
XYМаскирование | ✓ | ✓ | ✓ | ✓ |
Платформа: macOS-15.0.1-arm64-arm-64bit.
Процессор: рука
Количество процессоров: 10
Версия Python: 3.12.7
Количество изображений: 1000
Запусков за преобразование: 10
Максимальное количество итераций разминки: 1000.
альбументации: 1.4.20
Август: 1.0.0
изображение: 0.4.0
Корния: 0.7.3
факельное зрение: 0.20.0
Число — количество RGB-изображений uint8, обрабатываемых в секунду на одном ядре ЦП. Чем выше, тем лучше.
Трансформировать | альбументации 1.4.20 | величественный 1.0.0 | изображение 0.4.0 | Корния 0.7.3 | факельное зрение 0.20.0 |
---|---|---|---|---|---|
ГоризонтальныйФлип | 8618 ± 1233 | 4807 ± 818 | 6042 ± 788 | 390 ± 106 | 914 ± 67 |
ВертикальныйФлип | 22847 ± 2031 | 9153 ± 1291 | 10931 ± 1844 | 1212 ± 402 | 3198 ± 200 |
Поворот | 1146 ± 79 | 1119 ± 41 | 1136 ± 218 | 143 ± 11 | 181 ± 11 |
Аффинный | 682 ± 192 | - | 774 ± 97 | 147 ± 9 | 130 ± 12 |
Уравнять | 892 ± 61 | - | 581 ± 54 | 152 ± 19 | 479 ± 12 |
СлучайноеОбрезка80 | 47341 ± 20523 | 25272 ± 1822 | 11503 ± 441 | 1510 ± 230 | 32109 ± 1241 |
ShiftRGB | 2349 ± 76 | - | 1582 ± 65 | - | - |
Изменить размер | 2316 ± 166 | 611 ± 78 | 1806 ± 63 | 232 ± 24 | 195 ± 4 |
СлучайнаяГамма | 8675 ± 274 | - | 2318 ± 269 | 108 ± 13 | - |
Оттенки серого | 3056 ± 47 | 2720 ± 932 | 1681 ± 156 | 289 ± 75 | 1838 ± 130 |
Случайная перспектива | 412 ± 38 | - | 554 ± 22 | 86 ± 11 | 96 ± 5 |
Гауссово размытие | 1728 ± 89 | 242 ± 4 | 1090 ± 65 | 176 ± 18 | 79 ± 3 |
Медианное размытие | 868 ± 60 | - | 813 ± 30 | 5 ± 0 | - |
ДвижениеРазмытие | 4047 ± 67 | - | 612 ± 18 | 73 ± 2 | - |
Постеризовать | 9094 ± 301 | - | 2097 ± 68 | 430 ± 49 | 3196 ± 185 |
JpegСжатие | 918 ± 23 | 778 ± 5 | 459 ± 35 | 71 ± 3 | 625 ± 17 |
Гауссов шум | 166 ± 12 | 67 ± 2 | 206 ± 11 | 75 ± 1 | - |
Эластичный | 201 ± 5 | - | 235 ± 20 | 1 ± 0 | 2 ± 0 |
Клаэ | 454 ± 22 | - | 335 ± 43 | 94 ± 9 | - |
ГрубыйВыпадение | 13368 ± 744 | - | 671 ± 38 | 536 ± 87 | - |
Размытие | 5267 ± 543 | 246 ± 3 | 3807 ± 325 | - | - |
ЦветДжиттер | 628 ± 55 | 255 ± 13 | - | 55 ± 18 | 46 ± 2 |
Яркость | 8956 ± 300 | 1163 ± 86 | - | 472 ± 101 | 429 ± 20 |
Контраст | 8879 ± 1426 | 736 ± 79 | - | 425 ± 52 | 335 ± 35 |
СлучайныйИзмененный размерОбрезка | 2828 ± 186 | - | - | 287 ± 58 | 511 ± 10 |
Нормализовать | 1196 ± 56 | - | - | 626 ± 40 | 519 ± 12 |
Планкианский джиттер | 2204 ± 385 | - | - | 813 ± 211 | - |
Чтобы создать запрос на включение в репозиторий, следуйте документации на CONTRIBUTING.md.
Твиттер
Раздор
Если вы считаете эту библиотеку полезной для своих исследований, пожалуйста, рассмотрите возможность ссылки на «Альбоментации: быстрое и гибкое увеличение изображений»:
@Article{info11020125,AUTHOR = {Буслаев Александр и Игловиков Владимир И. и Хведченя Евгений и Паринов Алексей и Дружинин Михаил и Калинин Александр А.},TITLE = {Альбументации: быстрое и гибкое увеличение изображений},JOURNAL = {Информация},ОБЪЕМ = {11},ГОД = {2020},НОМЕР = {2},НОМЕР-СТАТЬИ = {125},URL = {https://www.mdpi.com/2078-2489/11/2/125},ISSN = {2078-2489}, DOI = {10.3390/info11020125}}