UImage. Руководство разработчика
UImage 1.2.0: библиотека для работы с изображениями в Python 3
Обзор возможностей библиотеки
Подключение библиотеки и импорт классов из модулей
Примеры использования библиотеки
Использование Pillow в программе на Python
Использование ImageMagick в программе на Python
Форматы файлов UImage и PPM
Взаимодействие с Tkinter и объектом PhotoImage
Взаимодействие с библиотекой NumPy
Взаимодействие с библиотекой Matplotlib
Настройка пути к каталогу для временных файлов
Модули библиотеки UImage
Класс UColor: цвет в формате RGBA
Объекты URGBA и URGB
Создание экземпляра класса UColor
Сравнение объектов
Основные методы
Изменение яркости и насыщенности цвета
Нормализация значений
Преобразование между диапазонами
Статические методы для работы с кортежами
Класс UPoint: координаты точки (тип int)
Класс UPointF: координаты точки (тип float)
Класс USize: размеры прямоугольной области (тип int)
Класс USizeF: размеры прямоугольной области (тип float)
Класс URect: координаты и размеры прямоугольной области
Чтение и запись графических файлов .uimage
Формат файла .uimage
Сохранение изображения PIL в файл .uimage
Загрузка изображения из файла .uimage
Класс UHelperTk: взаимодействие с библиотекой Tkinter
Преобразование объекта UImage в объект PhotoImage
Преобразование объекта PhotoImage в объект UImage
Загрузка и сохранение файлов в формате PNG
Класс UMat: матрица с произвольными значениями
Класс UImage: изображение RGBA
Создание нового изображения
Изменение пути к каталогу с временными файлами
Загрузка изображения из файла
Загрузка изображения с помощью PIL (PILLOW)
Загрузка изображения с помощью ImageMagick
Загрузка изображения из файла в формате RAW RGBA
Сохранение изображения в файл
Сохранение изображения с помощью PIL (PILLOW)
Сохранение изображения с помощью ImageMagick
Сохранение изображения в файл в формате RAW RGBA
Получение информации об объекте изображения
Получение и изменение пикселей изображения
Нормализация диапазона значений
Создание копии изображения
Сравнение изображений
Преобразование объекта UImage в объект другого класса
Преобразование объекта UImage в объект UImageRGB и наоборот
Преобразование объекта UImage в объект UImageGray и наоборот
Преобразование объекта UImage в объект UMat и наоборот
Преобразование объекта UImage в объект Image из PIL (PILLOW) и наоборот
Преобразование объекта UImage в массив байтов и наоборот
Выполнение манипуляций с объектом UImage
Класс UImageChange: преобразование изображений UImage
Зеркальное отражение изображения по вертикали или горизонтали
Вращение изображения на угол кратный 90 градусам
Вращение изображения на произвольный угол
Изменение размера изображения
Обрезка изображения
Обрезка лишних одноцветных границ
Вставка одного изображения в другое
Наложение одного изображения на другое
Заливка прямоугольной области цветом
Разделение изображения на каналы и объединение каналов
Объединение двух изображений
Добавление рамки вокруг изображения или с одной стороны
Добавление внешней или внутренней тени
Сепия
Негатив
Преобразование изображения в оттенки серого
Тиснение
Размытие изображения
Повышение резкости
Удаление шума с изображения
Добавление шума на изображение
Изменение яркости, контраста и цветового тона изображения
Нормализация изображения
Удаление прозрачности и альфа-канала
Замена цвета
Поиск границ объектов на изображении
Создание скриншота экрана
Класс UImageRGB: изображение RGB
Создание нового изображения
Изменение пути к каталогу с временными файлами
Загрузка изображения из файла
Загрузка изображения с помощью PIL (PILLOW)
Загрузка изображения с помощью ImageMagick
Загрузка изображения из файла в формате RAW RGB
Сохранение изображения в файл
Сохранение изображения с помощью PIL (PILLOW)
Сохранение изображения с помощью ImageMagick
Сохранение изображения в файл в формате RAW RGB
Сохранение изображения в файл в формате RAW RGBA
Получение информации об объекте изображения
Получение и изменение пикселей изображения
Нормализация диапазона значений
Создание копии изображения
Сравнение изображений
Преобразование объекта UImageRGB в объект другого класса
Преобразование объекта UImageRGB в объект UImage и наоборот
Преобразование объекта UImageRGB в объект UImageGray и наоборот
Преобразование объекта UImageRGB в объект UMat и наоборот
Преобразование объекта UImageRGB в объект Image из PIL (PILLOW) и наоборот
Преобразование объекта UImageRGB в массив байтов и наоборот
Выполнение манипуляций с объектом UImageRGB
Класс UImageRGBChange: преобразование изображений UImageRGB
Зеркальное отражение изображения по вертикали или горизонтали
Вращение изображения на угол кратный 90 градусам
Вращение изображения на произвольный угол
Изменение размера изображения
Обрезка изображения
Обрезка лишних одноцветных границ
Вставка одного изображения в другое
Наложение одного изображения на другое
Заливка прямоугольной области цветом
Разделение изображения на каналы и объединение каналов
Объединение двух изображений
Добавление рамки вокруг изображения или с одной стороны
Добавление внешней или внутренней тени
Сепия
Негатив
Преобразование изображения в оттенки серого
Тиснение
Размытие изображения
Повышение резкости
Удаление шума с изображения
Добавление шума на изображение
Изменение яркости, контраста и цветового тона изображения
Нормализация изображения
Замена цвета
Поиск границ объектов на изображении
Создание скриншота экрана
Класс UImageGray: изображение в оттенках серого
Создание нового изображения
Изменение пути к каталогу с временными файлами
Загрузка изображения из файла
Загрузка изображения с помощью PIL (PILLOW)
Загрузка изображения с помощью ImageMagick
Загрузка изображения из файла в формате RAW GRAY
Сохранение изображения в файл
Сохранение изображения с помощью PIL (PILLOW)
Сохранение изображения с помощью ImageMagick
Сохранение изображения в файл в формате RAW GRAY
Сохранение изображения в файл в формате RAW RGB
Сохранение изображения в файл в формате RAW RGBA
Получение информации об объекте изображения
Получение и изменение пикселей изображения
Нормализация диапазона значений
Работа с черно-белым изображением
Инверсия цвета
Создание копии изображения
Сравнение изображений
Вычисление гистограммы
Преобразование объекта UImageGray в объект другого класса
Преобразование объекта UImageRGB в объект UImageGray и наоборот
Преобразование объекта UImageGray в объект UMat и наоборот
Преобразование объекта UImageGray в объект Image из PIL (PILLOW) и наоборот
Преобразование объекта UImageGray в массив байтов и наоборот
Преобразование объекта UImageGray в объект UMask и наоборот
Преобразование объекта UImageGray в строку в формате BWSTR и наоборот
Выполнение манипуляций с объектом UImageGray
Класс UMask: маска или черно-белое изображение
Создание объекта
Преобразование объекта UImageGray в объект UMask и наоборот
Сохранение изображения в файл
Загрузка изображения из файла
Получение информации об объекте
Получение и изменение пикселей изображения
Инверсия цвета
Создание копии объекта
Сравнение объектов
Строка в формате BWSTR
Преобразование объекта UMask в строку в формате BWSTR и наоборот
Преобразование объекта UImageGray в строку в формате BWSTR и наоборот
Класс UImageGrayChange: преобразование изображений UImageGray
Зеркальное отражение изображения по вертикали или горизонтали
Вращение изображения на угол кратный 90 градусам
Вращение изображения на произвольный угол
Изменение размера изображения
Обрезка изображения
Обрезка лишних одноцветных границ
Вставка одного изображения в другое
Заливка прямоугольной области цветом
Объединение двух изображений
Преобразование в черно-белое изображение
Тиснение
Размытие изображения
Повышение резкости
Удаление шума с изображения
Добавление шума на изображение
Изменение яркости изображения
Нормализация изображения
Замена цвета
Поиск границ объектов на изображении
Создание скриншота экрана
Класс UFont: характеристики шрифта
Класс UImageDrawPIL: рисование на UImage
Создание контекста рисования и получение результата
Изменение характеристик заливки и обводки
Рисование с помощью методов из библиотеки Pillow
Рисование точки
Рисование линии
Рисование прямоугольника
Рисование прямоугольной рамки
Рисование прямоугольника со скругленными углами
Рисование многоугольника
Рисование эллипса
Рисование круга
Рисование дуги
Рисование замкнутой дуги
Рисование сектора
Вывод текста на изображение
Вывод многострочного текста на изображение
Класс UImageRGBDrawPIL: рисование на UImageRGB
Создание контекста рисования и получение результата
Изменение характеристик заливки и обводки
Рисование с помощью методов из библиотеки Pillow
Рисование точки
Рисование линии
Рисование прямоугольника
Рисование прямоугольной рамки
Рисование прямоугольника со скругленными углами
Рисование многоугольника
Рисование эллипса
Рисование круга
Рисование дуги
Рисование замкнутой дуги
Рисование сектора
Вывод текста на изображение
Вывод многострочного текста на изображение
Класс UImageGrayDrawPIL: рисование на UImageGray
Создание контекста рисования и получение результата
Изменение характеристик заливки и обводки
Рисование с помощью методов из библиотеки Pillow
Рисование точки
Рисование линии
Рисование прямоугольника
Рисование прямоугольной рамки
Рисование прямоугольника со скругленными углами
Рисование многоугольника
Рисование эллипса
Рисование круга
Рисование дуги
Рисование замкнутой дуги
Рисование сектора
Вывод текста на изображение
Вывод многострочного текста на изображение
Класс UHelperNP: взаимодействие с библиотекой NumPy
Преобразование объекта изображения в массив NumPy
Тип uint8 (диапазон значений от 0 до 255)
Тип int32 (диапазон значений от 0 до 255)
Тип uint16 (диапазон значений от 0 до 65 535)
Тип float32 (диапазон значений от 0.0 до 1.0)
Тип float64 (диапазон значений от 0.0 до 1.0)
Преобразование массива NumPy в объект изображения
Тип uint8 (диапазон значений от 0 до 255)
Тип int32 (диапазон значений от 0 до 255)
Тип uint16 (диапазон значений от 0 до 65 535)
Типы float32 и float64 (диапазон значений от 0.0 до 1.0)
Преобразование объекта изображения в объект UMat и наоборот
Преобразование цветного изображения в оттенки серого
Преобразование изображения в оттенках серого в черно-белое
Преобразование объекта UImageGray в объект UMask и наоборот
Преобразование объекта UImageGray в строку в формате BWSTR и наоборот
Преобразование объекта UMask в строку в формате BWSTR и наоборот
Нормализация диапазона значений
Разделение изображения на каналы
UImageGray: зеркальное отражение изображения по вертикали или горизонтали
UImageGray: вращение изображения на угол кратный 90 градусам
UImageGray: заливка прямоугольной области цветом
UImageGray: обрезка изображения
UImageGray: обрезка лишних одноцветных границ
UImageGray: вставка одного изображения в другое
UImageGray: объединение двух изображений
UImageGray: добавление рамки вокруг изображения или с одной стороны
Добавление паддинга для свертки
UImageGray: сравнение двух изображений
UImageGray: вычисление гистограммы
Сравнение двух строк в формате BWSTR
Класс UHelperPlt: взаимодействие с библиотекой Matplotlib
Просмотр изображения в диалоговом окне
UImageRGB: просмотр гистограмм всех каналов
UImageGray: вычисление и просмотр гистограммы
Описание библиотеки UImage
Как заказать библиотеку UImage
Библиотека не продается. Библиотека лицензируется одной из трех типов лицензий: User, Company или Public.
- Лицензия
User — предоставляется на одного пользователя. Библиотека может использоваться только в личных целях. Любое распространение библиотеки запрещено. Лицензия User предоставляет неисключительную и непередаваемую лицензию, не предполагающую права предоставления какой-либо сублицензии, на использование библиотеки в течение срока действия лицензии. Срок действия лицензии не ограничен. Число единиц ПО, использующих библиотеку, не ограничено. Лицензия User доступна только физическим лицам. Стоимость лицензии на UImage — 2 000 руб.
- Лицензия
Company — предоставляется на одну фирму и одно наименование ПО. Программа с библиотекой может использоваться сотрудниками внутри фирмы. Использование программы с библиотекой клиентами фирмы возможно, но только удаленно, например, предоставление сервиса на сайте (с размещением библиотеки на сервере) без непосредственного доступа клиента к коду библиотеки. Любое распространение библиотеки и программы с библиотекой запрещено. Лицензия Company предоставляет неисключительную и непередаваемую лицензию, не предполагающую права предоставления какой-либо сублицензии, на использование библиотеки в течение срока действия лицензии. Срок действия лицензии не ограничен. Лицензия Company доступна только юридическим лицам. Стоимость лицензии на UImage — 10 000 руб.
- Лицензия
Public — предоставляется на одно наименование ПО. Библиотека может использоваться только в составе ПО, распространяемого публично (платно или бесплатно). Учитывая, что исходные коды динамических библиотек (DLL), входящих в состав библиотеки, не предоставляются, запрещено использовать библиотеку в составе ПО, распространяемого по лицензии GPL и аналогичным, требующим обязательное публичное предоставление всех исходных кодов. Лицензия Public предоставляет неисключительную и непередаваемую лицензию, не предполагающую права предоставления какой-либо сублицензии, на использование библиотеки в течение срока действия лицензии. Срок действия лицензии не ограничен. Лицензия Public доступна физическим и юридическим лицам. Стоимость лицензии на UImage — 30 000 руб.
Пользователь, получивший ваше ПО, включающее библиотеку по лицензии Public, автоматически получает лицензию User или Company на библиотеку в зависимости от юридического статуса пользователя. Если пользователь решил создать свое ПО, распространяемое публично, включающее библиотеку, то он обязан приобрести лицензию Public на библиотеку. Если пользователь, автоматически получивший лицензию Company, решил создать второе, третье и т. д. ПО, используемое внутри фирмы, включающее библиотеку, то он обязан приобрести лицензию Company на каждое наименование ПО (за исключением первого), включающее библиотеку.
Документация содержится в строках документирования. Для получения списка методов нужно использовать функцию dir(), а для получения описания метода — функцию help(). Специализированные текстовые редакторы автоматически предоставят список методов при наборе букв и описание метода из строки документирования при выборе метода из списка. Расширенная документация доступна только в руководстве разработчика, которое в состав библиотеки не входит и приобретается отдельно.
Чтобы иметь полное представление о возможностях библиотеки, нужно приобрести руководство разработчика в формате HTML. В его состав входит расширенная документация и множество примеров, которые можно запустить на выполнение и наглядно увидеть результат. Распространение руководства разработчика запрещено.
Доступны для заказа следующие руководства разработчика в формате HTML (можно открыть любым Web-браузером; оглавление в файле index.html):
- "UImage. Руководство разработчика". Оглавление руководства. Стоимость
250 руб.
- "UImageC и UImage C API. Руководство разработчика". Включает заголовочные файлы для UImage C API. Оглавление руководства. Стоимость
250 руб.
- "UImageCV и UImageCV C API. Руководство разработчика". Включает заголовочные файлы для UImageCV C API. Оглавление руководства. Стоимость
300 руб.
Прежде чем заказывать библиотеку:
- прочтите текст Лицензии. Только если она вас полностью устраивает переходите к следующему шагу;
- выберите библиотеку и тип лицензии, подходящий под вашу программу или задачу. Учитывайте, что изменять что-либо в дистрибутиве библиотеки нельзя;
- закажите соответствующее руководство разработчика, чтобы полностью понимать возможности выбранной библиотеки;
- закажите лицензию
User, чтобы попробовать на практике и убедиться, что библиотека вам подходит. Вы всегда можете повысить лицензию до Company или Public с зачетом уже оплаченной суммы. В обратную сторону это не действует;
- закажите повышение лицензии с зачетом, если лицензия
User вас не устраивает.
Если есть вопросы, то задавайте. Контакты и форма для заказа