Документация Engee

Пакеты в составе JuliaImages

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

🚧В этом разделе описываются отдельные компоненты, образующие экосистему JuliaImages. Пакеты, отмеченные символом *, доступны при добавлении директивы using Images, но пакеты можно также использовать по отдельности. Ниже они сведены в общие категории, а затем отсортированы в алфавитном порядке, так что вы можете начать с того, что вас больше всего интересует.

  • Основные низкоуровневые пакеты:

Colors.jl* и ColorVectorSpace.jl* предоставляют определения и функции на уровне пикселей.

данных (например, N0f8) для хранения изображений.

  • ImageCore.jl* предоставляет различные базовые и

вспомогательные представления, типажи и функции для поддержки алгоритмов обработки изображений.

  • Типажи и вспомогательные средства

AxisArrays.jl* для наделения осей «смыслом».

предоставляющий вспомогательные функции для работы с изображениями, к которым добавлены метаданные.

  • 🚧 ImageDraw.jl позволяет рисовать фигуры на изображении.

  • ImageDistances.jl* — это оболочка пакета

Distances.jl для изображений.

  • OffsetArrays.jl поддерживает массивы с произвольными

смещениями индексов.

  • MappedViews.jl обеспечивает отложенные преобразования массивов

на месте.

  • PaddedViews.jl* добавляет виртуальное дополнение к краям

массива. Также позволяет объединять несколько изображений в одно.

  • TestImages.jl предоставляет несколько «стандартных» тестовых изображений.

  • Визуализация изображений обеспечивается различными пакетами.

  • Сохранение и загрузка изображений обеспечиваются пакетами в составе JuliaIO.

  • Высокоуровневые алгоритмы

  • DitherPunk.jl обеспечивает различные операции размывания изображений.

  • ImageBinarization.jl предоставляет различные

алгоритмы бинаризации изображений.

улучшение и изменение контрастности изображений.

морфологических операций для обработки изображений.

  • ImageFiltering.jl* поддерживает основные операции фильтрации.

  • ImageFeatures.jl — это пакет для выявления

«ключевых точек» (характерных признаков) на изображениях и определения их характеристик.

индексов оценки качества изображений, например PSNR и SSIM.

связанные с геометрическими преобразованиями.

сегментации изображений.

  • ImageInpainting.jl предоставляет алгоритмы восстановлений изображений на Julia

При разработке пакетов включать такую большую зависимость, как Images.jl, в раздел deps файла Project.toml обычно нежелательно. Поэтому рекомендуется добавлять только ImageCore вместе с конкретными требуемыми подпакетами. С помощью @which можно узнать, к какому именно пакету и файлу относятся метод или функция.

JuliaImages — не закрытая экосистема; она прекрасно работает со многими другими пакетами, не относящимися к JuliaImages. Вот неполный список сторонних пакетов, которые широко применяются вместе с Images.jl.

  • Augmentor.jl предоставляет ряд базовых операций дополнения изображений для задач машинного обучения, связанных с изображениями.

  • Flux.jl — это набор инструментов глубокого обучения на Julia.

Обратите внимание также на ряд других пакетов, не относящихся к JuliaImages.

  • MIRT.jl — инструментарий для реконструкции изображений от Мичиганского университета. Как следует из названия, это инструментарий для решения задач реконструкции изображений.

  • ImageClipboard.jl позволяет копировать изображения в буфер обмена и вставлять их из него.

  • ImagePhaseCongruency.jl предоставляет набор частотных фильтров, основанных на фазовой конгруэнтности.

  • ImageProjectiveGeometry.jl — это самодостаточный пакет для задач компьютерного зрения, связанных с проективной геометрией.