Главная » 2025 » Декабрь » 22 » UImageGray: вставка одного изображения в другое
22:17
UImageGray: вставка одного изображения в другое

UImageGray: вставка одного изображения в другое

Вставить одно изображение в другое позволяет статический метод uimagegray_paste() из класса UHelperNP. Формат метода:

UHelperNP.uimagegray_paste(<UImageGray1>, <UImageGray2>, <UPoint>,
                            is_normalize=False)

В первых двух параметрах указываются объекты UImageGray. Третий параметр задает координаты точки вставки изображения <UImageGray2> в изображение <UImageGray1> в виде объекта UPoint. Если в параметре is_normalize задано значение True, то будет выполнена нормализация диапазона значений от 0 до 255. По умолчанию нормализация не выполняется. Метод возвращает объект UImageGray или значение None в случае ошибки. Операция выполняется с помощью библиотеки NumPy. Пример вставки одного изображения в другое:

from unicross_image.uhelper import UPoint
from unicross_image.uimagegray import UImageGray
from unicross_image.uhelper_np import UHelperNP

img1 = UImageGray.load("foto.jpg")
img2 = UImageGray(50, 50, 0)
img3 = UHelperNP.uimagegray_paste(img1, img2, UPoint(50, 50))
if img3:
    print(img3)
    img3.save("test.png")
else:
    print("Ошибка при выполнении операции")

UImageGray: объединение двух изображений

Объединить два изображения позволяет статический метод uimagegray_append() из класса UHelperNP. Формат метода:

UHelperNP.uimagegray_append(<UImageGray1>, <UImageGray2>, x=False,
                            is_normalize=False)

В качестве первых двух параметров указываются объекты UImageGray. Если параметр x имеет значение True, то объединение производится по горизонтали. По умолчанию применяется вертикальное объединение. Если объединение выполняется по горизонтали, то высота изображений должна быть одинаковой. Если объединение выполняется по вертикали, то ширина изображений должна быть одинаковой. Если в параметре is_normalize задано значение True, то будет выполнена нормализация диапазона значений от 0 до 255. По умолчанию нормализация не выполняется. Метод возвращает объект UImageGray или значение None в случае ошибки. Операция выполняется с помощью библиотеки NumPy. Пример объединения по вертикали:

from unicross_image.uimagegray import UImageGray
from unicross_image.uhelper_np import UHelperNP

img1 = UImageGray.load("foto.jpg")
print(img1) # UImageGray(width=500, height=333)
img2 = UImageGray(img1.get_width(), 250, 128)
# Ширина изображений должна быть одинаковой!
img3 = UHelperNP.uimagegray_append(img1, img2)
if img3:
    print(img3) # UImageGray(width=500, height=583)
    img3.save("test.png")
else:
    print("Ошибка при выполнении операции")

Пример объединения по горизонтали:

from unicross_image.uimagegray import UImageGray
from unicross_image.uhelper_np import UHelperNP

img1 = UImageGray.load("foto.jpg")
print(img1) # UImageGray(width=500, height=333)
img2 = UImageGray(300, img1.get_height(), 128)
# Высота изображений должна быть одинаковой!
img3 = UHelperNP.uimagegray_append(img1, img2, x=True)
if img3:
    print(img3) # UImageGray(width=800, height=333)
    img3.save("test.png")
else:
    print("Ошибка при выполнении операции")

Наложить два изображения одинакового размера друг на друга позволяет статический метод uimagegray_union_maximum() из класса UHelperNP. Формат метода:

UHelperNP.uimagegray_union_maximum(<UImageGray1>, <UImageGray2>,
                                   is_normalize=False)

В качестве первых двух параметров указываются объекты UImageGray. Размеры изображений должны быть одинаковыми. Если в параметре is_normalize задано значение True, то будет выполнена нормализация диапазона значений от 0 до 255. По умолчанию нормализация не выполняется. Метод возвращает объект UImageGray с максимальными значениями из двух изображений или значение None в случае ошибки. Операция выполняется с помощью библиотеки NumPy. Пример:

from unicross_image.uimagegray import UImageGray
from unicross_image.uhelper_np import UHelperNP

img1 = UImageGray(3, 1)
img1.arr = [0, 128, 255]
img2 = UImageGray(3, 1)
img2.arr = [255, 100, 0]
# Размеры изображений должна быть одинаковыми!
img3 = UHelperNP.uimagegray_union_maximum(img1, img2)
if img3:
    print(img3.arr) # [255, 128, 255]
else:
    print("Ошибка при выполнении операции")

Класс входит в состав графической библиотеки UImage для Python 3. Описание библиотеки UImage

Категория: UImage | Просмотров: 5 | Добавил: unicross | Теги: UImage, UImageGray, UHelperNP, NumPy, Python | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Категории раздела
Списки слов [10]
Списки слов и словари
OCR [4]
Оптическое распознавание символов
UImage [80]
Графическая библиотека для Python
UImage C [7]
Графическая библиотека для Python
Программы [4]
Полезные программы
Прочее [3]
Другие темы
Календарь
«  Декабрь 2025  »
Пн Вт Ср Чт Пт Сб Вс
1234567
891011121314
15161718192021
22232425262728
293031