Как правильно замерить размер москитной сетки на пластиковые окна


Как замерить москитную сетку на пластиковое окно: инструкция по правльному замеру

Наверх Перепланировки
  • Каталог домов
Рассылка С чего начать ремонт О проекте Реклама Контакты Facebook Vkontakte Odnoklassniki Instagram Pinterest Дизайн и декор
  • Квартира
  • Спальня
  • Кухня
  • Столовая
  • Гостиная
  • Ванная комната, санузел
  • Прихожая
  • Детская
  • Мансарда
  • Маленькие комнаты
  • Рабочее место
  • Гардеробная
  • Библиотека
  • Декорирование
  • Мебель
  • Аксессуары
  • Загородный дом
  • Ландшафт
  • Системы хранения
  • Коридор
  • Уборка
Строительство и ремонт
  • Фундамент
  • Кровля
  • Стены
  • Окна
  • Двери и перегородки
  • Потолок

Измерение размера объектов в изображении с помощью OpenCV

Измерение размера объекта (или объектов) на изображении было сильно востребованным учебником в блоге PyImageSearch в течение некоторого времени - и это отлично , чтобы разместить этот пост в Интернете и поделиться им с вами.

Сегодняшний пост является вторым в серии из трех статей о , измеряющих размер объектов на изображении и , вычисляющих расстояния между ними .

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

Сегодня мы собираемся использовать эту технику, чтобы помочь нам в вычислении размера объектов на изображении. Обязательно прочитайте весь пост, чтобы увидеть, как это делается!

Измерение размера объектов на изображении с помощью OpenCV

Измерение размера объектов на изображении аналогично вычислению расстояния от нашей камеры до объекта - в обоих случаях нам нужно определить соотношение, которое измеряет количество пикселей на заданную метрику.

Я называю это соотношением «пикселей на метрику», которое я более формально определил в следующем разделе.

Соотношение «пикселей на метрику»

Чтобы определить размер объекта на изображении, нам сначала нужно выполнить «калибровку» (не путать с внутренней / внешней калибровкой) с использованием эталонного объекта. Наш эталонный объект должен иметь два важных свойства:

  • Свойство № 1: Мы должны знать размеров этого объекта (с точки зрения ширины или высоты) в единицах измерения (таких как миллиметры, дюймы и т. Д.)).
  • Свойство № 2: Мы должны иметь возможность легко найти этот эталонный объект на изображении либо на основе размещения объекта (например, эталонный объект всегда помещается в левый верхний угол изображения) или через образов (например, отличительный цвет или форма, уникальные и отличные от всех других объектов на изображении). В любом случае наша ссылка должна быть , уникально идентифицируемая каким-либо образом .

В этом примере мы будем использовать Соединенные Штаты четверти, как наш ссылочный объект и во всех примерах, убедитесь, что он всегда самыми левая объекта в нашем изображении:

Рисунок 1: Мы будем использовать квартал Соединенных Штатов в качестве эталонного объекта и следить за тем, чтобы он всегда располагался как крайний левый объект на изображении, что упростит нам его извлечение путем сортировки контуров на основе их местоположения.

Гарантируя, что четверть является крайним левым объектом, мы можем отсортировать контуры нашего объекта слева направо, захватить четверть (которая всегда будет первым контуром в отсортированном списке) и использовать ее для определения нашей пикселей на_метрику , который мы определяем как:

пикселей_per_metric = object_width / know_width

Квартал в США имеет известную_ширину 0,955 дюйма. Теперь предположим, что наш object_width (измеренный в пикселях) вычисляется как 150 пикселей в ширину (на основе связанной с ним ограничивающей рамки).

пикселей_пер_метрика , следовательно:

пикселей_пер_метрика = 150 пикселей / 0,955 дюйма = 157 пикселей

Таким образом, на каждые 0,955 дюйма нашего изображения приходится примерно 157 пикселей. Используя это соотношение, мы можем вычислить размер объектов на изображении.

Измерение размеров объектов с помощью компьютерного зрения

Теперь, когда мы понимаем соотношение «пикселей на метрику», мы можем реализовать скрипт драйвера Python, используемый для измерения размера объектов в изображении.

Откройте новый файл, назовите его object_size.py и вставьте следующий код:

 # импортируем необходимые пакеты from scipy.spatial import distance as dist с точки зрения импорта imutils из imutils импортировать контуры импортировать numpy как np import argparse импорт imutils импорт cv2 Средняя точка определения (ptA, ptB): return ((ptA [0] + ptB [0]) * 0,5, (ptA [1] + ptB [1]) * 0,5) # создать аргумент, синтаксический анализ и анализ аргументов ap = argparse.ArgumentParser () ap.add_argument ("- i", "--image", required = True, help = "путь к входному изображению") ap.add_argument ("- w", "--width", type = float, required = True, help = "ширина самого левого объекта на изображении (в дюймах)") args = vars (ap.parse_args ()) 

Строки 2-8 импортируют наши необходимые пакеты Python. В этом примере мы будем активно использовать пакет imutils, поэтому, если он у вас не установлен, убедитесь, что вы установили его, прежде чем продолжить:

 $ pip install imutils 

В противном случае, если у вас do , у вас установлено imutils , убедитесь, что у вас установлена ​​последняя версия, то есть 0.3.6 на момент написания:

 $ pip install - обновить imutils 

Строки 10 и 11 определяет вспомогательный метод с именем midpoint , который, как следует из названия, используется для вычисления средней точки между двумя наборами координат (x, y) .

Затем мы анализируем аргументы командной строки на строках 14-19 . Мы требуем два аргумента, --image , который является путем к нашему входному изображению, содержащих объекты, которые мы хотим измерить, и --width , который является шириной (в дюймах) наш эталонный объект, считающемся Самый левый объект в нашем - изображение .

Теперь мы можем загрузить наше изображение и предварительно обработать его:

 # загружаем изображение, конвертируем его в оттенки серого и слегка размываем image = cv2.imread (args ["изображение"]) серый = cv2.cvtColor (изображение, cv2.COLOR_BGR2GRAY) серый = cv2.GaussianBlur (серый, (7, 7), 0) # выполнить обнаружение краев, затем выполнить дилатацию + эрозию, чтобы # закрыть зазоры между краями объекта edged = cv2.Canny (серый, 50, 100) edged = cv2.dilate (обрезной, Нет, итерации = 1) edged = cv2.erode (обрезной, Нет, итерации = 1) # найти контуры на карте краев cnts = cv2.findContours (edged.copy (), cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) cnts = imutils.grab_contours (cnts) # сортируем контуры слева направо и инициализируем # калибровочная переменная "пикселей на метрику" (cnts, _) = contours.sort_contours (cnts) PixelPerMetric = Нет 

Строки 22-24 загружает наше изображение с диска, преобразует его в оттенки серого, а затем сглаживает, используя фильтр Гаусса. Затем мы выполняем обнаружение краев вместе с расширением + эрозией, чтобы закрыть любые промежутки между краями на карте краев (, строки 28-30, ).

Строки 33-35 находят контуры (т. Е. Контуры), которые соответствуют объектам на нашей карте границ.

Эти контуры затем сортируются слева направо (что позволяет нам извлечь наш опорный объект) в , строка 39 . Мы также инициализируем значение пикселейPerMetric в строке , строка 40, .

Следующий шаг - изучить каждый из контуров:

 # перебирать контуры индивидуально для c в центах: # если контур недостаточно большой, игнорируем его если cv2.contourArea (c) <100: Продолжать # вычисляем повернутую ограничивающую рамку контура orig = image.copy () box = cv2.minAreaRect (c) box = cv2.cv.BoxPoints (поле) если imutils.is_cv2 () иначе cv2.boxPoints (поле) box = np.array (box, dtype = "int") # упорядочиваем точки контура так, чтобы они отображались # в верхнем левом, верхнем правом, нижнем правом и нижнем левом # заказ, затем нарисуйте контур повернутой границы # коробка box = перспектива.order_points (поле) cv2.drawContours (orig, [box.astype ("int")], -1, (0, 255, 0), 2) # перебрать исходные точки и нарисовать их для (x, y) в поле: cv2.круг (ориг, (int (x), int (y)), 5, (0, 0, 255), -1) 

На Line 43 мы начинаем перебирать каждый из отдельных контуров. Если контур недостаточно велик, мы отбрасываем область, предполагая, что это шум, оставшийся от процесса обнаружения края (, строки 45 и 46, ).

При условии, что контурная область достаточно велика, мы вычисляем повернутую ограничивающую рамку изображения на строках 50-52 , уделяя особое внимание использованию cv2.cv.Функция BoxPoints для OpenCV 2.4 и метод cv2.boxPoints для OpenCV 3.

Затем мы располагаем нашу повернутую ограничивающую рамку с координатами в верхнем левом, верхнем правом, нижнем правом и нижнем левом порядке, как обсуждалось в сообщении блога на прошлой неделе (, строка 58, ).

Наконец, линий 59-63 рисуют контура объекта в зеленом , а затем рисуют вершин прямоугольника ограничивающей рамки в виде маленьких красных кружков .

Теперь, когда мы упорядочили ограничивающую рамку, мы можем вычислить серию средних точек:

 # распаковать упорядоченную ограничивающую рамку, затем вычислить среднюю точку # между координатами верхнего левого и правого верха, за которым следует # середина между нижним левым и нижним правым координатами (tl, tr, br, bl) = коробка (tltrX, tltrY) = средняя точка (tl, tr) (blbrX, blbrY) = средняя точка (bl, br) # вычислить среднюю точку между верхней левой и верхней правой точками, # за которым следует середина между верхним правым и нижним правым (tlblX, tlblY) = средняя точка (tl, bl) (trbrX, trbrY) = средняя точка (tr, br) # рисуем средние точки на изображении cv2.круг (ориг, (int (tltrX), int (tltrY)), 5, (255, 0, 0), -1) cv2.circle (orig, (int (blbrX), int (blbrY)), 5, (255, 0, 0), -1) cv2.circle (orig, (int (tlblX), int (tlblY)), 5, (255, 0, 0), -1) cv2.circle (orig, (int (trbrX), int (trbrY)), 5, (255, 0, 0), -1) # рисуем линии между серединами cv2.line (orig, (int (tltrX), int (tltrY)), (int (blbrX), int (blbrY)), (255, 0, 255), 2) cv2.line (orig, (int (tlblX), int (tlblY)), (int (trbrX), int (trbrY)), (255, 0, 255), 2) 

Lines 68-70 распаковывает нашу упорядоченную ограничивающую рамку, затем вычисляет среднюю точку между верхним левым и верхним правым точками, а затем среднюю точку между нижними правыми точками.

Мы также вычислим средние точки между верхним левым + нижним левым и верхним правым + нижним правым соответственно (, строки 74 и 75, ).

Линии 78-81 рисуют синих средних точек на нашем изображении , а затем соединяют средние точки с фиолетовыми линиями .

Затем нам нужно инициализировать нашу переменную пикселейPerMetric , исследуя наш эталонный объект:

 # вычислить евклидово расстояние между серединами dA = расст.евклидово ((tltrX, tltrY), (blbrX, blbrY)) дБ = dist.euclidean ((tlblX, tlblY), (trbrX, trbrY)) # если количество пикселей на метрику не было инициализировано, то # вычислить это как отношение пикселей к предоставленной метрике # (в данном случае дюймы) если pixelPerMetric равен None: pixelPerMetric = дБ / аргумент ["ширина"] 

Сначала мы вычисляем евклидово расстояние между нашими наборами средних точек ( строки 90 и 91 ). Переменная dA будет содержать расстояние по высоте (в пикселях), а дБ будет содержать расстояние по ширине .

Затем мы проверяем Line 96 , чтобы увидеть, была ли инициализирована наша переменная пикселей PerMetric , и если нет, мы делим дБ на предоставленный нами --width , таким образом давая нам (приблизительное ) пикселей на дюйм.

Теперь, когда наша переменная пикселей PerMetric определена, мы можем измерить размер объектов на изображении:

 # вычисляем размер объекта dimA = dA / pixelsPerMetric dimB = дБ / пикселей PerMetric # рисуем размеры объекта на изображении cv2.putText (orig, "{: .1f} в" .format (dimA), (int (tltrX - 15), int (tltrY - 10)), cv2.FONT_HERSHEY_SIMPLEX, 0,65, (255, 255, 255), 2) cv2.putText (orig, "{: .1f} in" .format (dimB), (int (trbrX + 10), int (trbrY)), cv2.FONT_HERSHEY_SIMPLEX, 0,65, (255, 255, 255), 2) # показать выходное изображение cv2.imshow ("Изображение", ориг) cv2.waitKey (0) 

Строки 100 и 101 вычисляют размеры объекта ( в дюймах ) путем деления соответствующих евклидовых расстояний на значение пикселей PerMetric (см. Раздел «Пикселей на метрику» выше для получения дополнительной информации о том, почему это соотношение работает).

Линии 104-109 показывают размеры объекта на нашем изображении , а Строки 112 и 113 отображают выходные результаты.

Результаты измерения размеров объекта

Чтобы протестировать наш сценарий object_size.py , просто введите следующую команду:

 $ python object_size.py --image images / example_01.png --width 0.955 

Ваш результат должен выглядеть примерно так:

Рисунок 2: Измерение размера объектов на изображении с помощью OpenCV, Python и методов компьютерного зрения + обработки изображений.

Как видите, мы успешно вычислили размер каждого объекта на нашем изображении - наша визитная карточка правильно указана как 3,5 дюйма x 2 дюйма . Точно так же наш никель точно описывается как 0,8 дюйма x 0,8 дюйма .

Однако не все наши результаты идеальны .

Сообщается, что картриджи Game Boy имеют несколько другие размеры (даже если они одного размера). Высота обеих четвертей также меньше на 0,1 дюйма .

Так почему это? Почему измерения объекта не на 100% точны?

Причина двоякая:

  1. Сначала я наскоро сделал это фото на свой iPhone. Угол наверняка равен , а не , идеальный угол 90 градусов, «смотрящий вниз» (как с высоты птичьего полета) на объекты. Без идеального обзора под углом 90 градусов (или как можно более близкого к нему) размеры объектов могут казаться искаженными.
  2. Во-вторых, я не откалибровал свой iPhone по внутренним и внешним параметрам камеры.Без определения этих параметров фотографии могут быть подвержены радиальному и тангенциальному искажению линз. Выполнение дополнительного шага калибровки для нахождения этих параметров может «не исказить» наше изображение и привести к лучшему приближению размера объекта (но я оставлю обсуждение коррекции искажений как тему в следующем сообщении в блоге).

В то же время старайтесь получить как можно более близкий угол обзора при фотосъемке ваших объектов - это поможет повысить точность оценки размера вашего объекта.

Тем не менее, давайте рассмотрим второй пример измерения размера объекта, на этот раз измерения размеров таблеток:

 $ python object_size.py --image images / example_02.png --width 0.955 
Рисунок 3: Измерение размера таблеток на изображении с помощью OpenCV.

Почти 50% всех 20000 таблеток, отпускаемых по рецепту, в Соединенных Штатах - это круглых и / или белых , поэтому, если мы сможем отфильтровать таблетки на основе их измерений, у нас будет больше шансов точно идентифицировать лекарство.

Наконец, у нас есть последний пример, на этот раз с использованием визитной карточки 3,5 дюйма x 2 дюйма для измерения размера двух виниловых EP и конверта:

 $ python object_size.py --image images / example_03.png --width 3.5 
Рисунок 4: Последний пример измерения размера объектов на изображении с помощью Python + OpenCV.

Опять же, результаты не совсем идеальные, но это связано с (1) углом обзора и (2) искажением объектива, как упоминалось выше.

Сводка

В этом сообщении блога мы узнали, как измерить размер объектов в изображении с помощью Python и OpenCV.

Как и в нашем руководстве по измерению расстояния от камеры до объекта, нам нужно определить соотношение «пикселей на метрику», которое описывает количество пикселей, которые могут «уместиться» в заданное количество дюймов, миллиметров, метров. и др.

Чтобы вычислить это соотношение, нам нужен эталонный объект с двумя важными свойствами:

  • Свойство № 1: Контрольный объект должен иметь известных размеров (например, ширину или высоту) в единицах измерения (дюймы, миллиметры и т. Д.)).
  • Свойство № 2: Контрольный объект должен быть , легко найти , либо с точки зрения местоположения объекта, либо его внешнего вида .

При условии, что оба этих свойства могут быть выполнены, вы можете использовать свой эталонный объект для калибровки переменной pixels_per_metric и оттуда вычислять размер других объектов в изображении.

В следующем сообщении блога мы рассмотрим этот пример на шаг дальше и узнаем, как вычислить расстояние между объектами на изображении.

Обязательно подпишитесь на рассылку новостей PyImageSearch, используя форму ниже, чтобы получать уведомления, когда следующая запись в блоге будет опубликована - , вы не захотите ее пропустить!

Загрузите исходный код и БЕСПЛАТНОЕ 17-страничное руководство по ресурсам

Введите свой адрес электронной почты ниже, чтобы получить ZIP-архив с кодом и БЕСПЛАТНОЕ 17-страничное руководство по компьютерному зрению, OpenCV и глубокому обучению. Внутри вы найдете мои тщательно отобранные учебники, книги, курсы и библиотеки, которые помогут вам освоить CV и DL!

.

Как уменьшить размер изображения на мониторе | Small Business

Автор: Зак Лаццари Обновлено 24 января 2019 г.

Уменьшение размера экрана на мониторе часто является очень необходимой настройкой, позволяющей привести настройки дисплея в соответствие с фактическим размером экрана. Несоответствующий размер приведет к тому, что окна будут вне поля зрения и, как правило, создадут визуально разрушительную среду. Процесс уменьшения размера экрана относительно прост и прост в исполнении. Это может немного усложниться при использовании настройки с двумя мониторами, если мониторы имеют другой размер, но выполнить настройку по-прежнему довольно легко.

Регулировка дисплея

Процессы уменьшения размера экрана на ПК и MAC аналогичны, за исключением нескольких незначительных изменений. Следуйте простым инструкциям, и ваш экран будет иметь лучшее разрешение и видимость за считанные минуты.

Цель не обязательно состоит в том, чтобы уменьшить размер экрана, но чтобы размер экрана соответствовал размеру экрана. Это означает, что эффективное масштабирование дисплея по размеру приведет к желаемому результату. Однако все это не имеет значения, так как вы просто выберете подогнать свой дисплей под размер экрана, получив доступ к визуальным настройкам на вашем компьютере.

Инструкции для ПК и Mac

На ПК щелкните меню Start , а затем выберите Preferences и Display Settings . Вы также можете щелкнуть правой кнопкой мыши пустой экран, чтобы получить доступ к меню Настройки . В зависимости от вашей операционной системы вы можете выбрать По размеру экрана или Изменить размер текста, приложений и других элементов .

На Mac выберите Preferences , а затем Display Settings и Displays .Задайте для параметра масштабирование, чтобы экран соответствовал размеру экрана.

Это решит вашу проблему, и теперь дисплей будет соответствовать размеру экрана. Если у вас все еще есть проблемы, скорее всего, это связано с конкретной программой или браузером. Вы должны изучить настройки этой программы, чтобы решить эту проблему. В чем-то вроде веб-браузера щелчок по двум перекрывающимся квадратам в правом верхнем углу, например, изменит настройки размера.

Дисплеи с двумя мониторами

Чтобы настроить автоматическое решение при использовании двух мониторов, настройки масштабирования дисплея будут соответствовать размеру экрана.Используемый экран не имеет значения, и вы можете перемещать приложения между двумя экранами с автоматической подгонкой.

Это необходимо сделать при использовании двух мониторов, поскольку постоянное смещение перспективы затруднительно для глаз и очень раздражает. Постоянная подгонка к размеру вашего монитора имеет большое значение, а визуальный переход между мониторами более привлекателен.

В Windows 10 нажмите кнопку Start , затем щелкните Preferences . Выберите Display Settings , чтобы улучшить визуальные перспективы и настройки двух мониторов.Выберите экран, который вы хотите настроить, и выберите опцию Изменить размер текста для автоматического масштабирования на этом конкретном экране. Сделайте это для обоих экранов, и настройка экрана между ними будет происходить без каких-либо дальнейших изменений.

Поддерживайте разрешение

Обратите внимание на параметры разрешения при настройке параметров дисплея. В некоторых случаях будет предложено сохранить максимальное разрешение. Всегда выбирайте наилучшее возможное разрешение. На аномально больших экранах качество разрешения может снизиться, но все же выбирайте самое высокое разрешение, чтобы поддерживать наилучшее качество изображения на вашем дисплее.

.

Как уменьшить размер JPEG

JPEG (произносится как «jay-peg») - наиболее распространенный формат изображений в Интернете, позволяющий фотографам и графическим дизайнерам отправлять файлы, сохраняющие их качество, но не слишком большие. Стандарт JPEG, созданный Объединенной группой экспертов по фотографии, был впервые выпущен в 1992 году, заложив основу того, как мы делимся изображениями сегодня.


Нужны изображения для вашего проекта? В этом вам может помочь впечатляющая коллекция Shutterstock из более чем 70 миллионов изображений! Посмотрите, что может предложить наша библиотека.


Изучение того, как уменьшить размер JPEG , очень важно, особенно когда вы отправляете его по электронной почте или в социальных сетях. При более высоком разрешении изображение будет иметь больше пикселей, что добавит деталей, которые наиболее заметны при просмотре изображения в полном размере. Однако это также увеличивает размер файла, что может быть проблематичным при создании веб-контента.

Как правило, для цифровых нужд достаточно разрешения около 70 пикселей на дюйм. Прежде чем выбрать размер файла, важно подумать, как будет использоваться изображение.Например, если изображение будет отображаться только в виде эскиза, нет причин тратить место в хранилище на загрузку файла с высоким разрешением в Интернет. Ниже мы описали , как уменьшить размер JPEG в Windows и Mac.

Для Windows

  1. Запустите MS Paint : Каждый пользователь Windows играл с Paint, забавной программой, которую можно использовать для любительского рисования карикатур и абстрактных работ. Однако не все знают, что Paint также может изменять размер изображений и настраивать их разрешение.Это так легко сделать! Сначала найдите программу Paint, нажав «Пуск», «Все программы», а затем «Стандартные». Не имеет значения, установлена ​​ли на вашем компьютере Windows 95 или Windows 10 - в вашей операционной системе будет предварительно загружена версия Paint.

  2. F Индикация параметра изменения размера : Чтобы изменить размер изображения, выберите вкладку «Главная» и найдите заголовок «Изображение». Будет опция «Изменить размер». Когда вы щелкнете по нему, появится новое диалоговое окно с более расширенными настройками.Перед настройкой размера или количества пикселей важно установить флажок «Сохранить соотношение сторон», чтобы сохранить размеры изображения.

  3. Настройка разрешения : Помимо настройки размера изображения на определенный процент, вы также можете изменить разрешение. Просто нажмите «Пиксели» и решите, сколько пикселей на дюйм вы хотите для меньшего размера JPEG.

  4. Сохраните новую версию : Если вас устраивают новые настройки размера, выберите «Сохранить как» в главном меню.Мы рекомендуем сохранить новую версию изображения, на случай, если вам понадобится использовать исходный файл в какой-то момент.


Для Mac

  1. Launch Preview : Каждый Mac с OS X имеет предварительно установленную версию Preview. Удобная программа позволяет просматривать и редактировать файлы изображений, поэтому она идеально подходит для изменения размера JPEG. Сначала откройте изображение в режиме предварительного просмотра - либо запустив предварительный просмотр в папке «Приложения», либо удерживая клавишу Control + щелкнув изображение и выбрав «Открыть с помощью».

  2. Отрегулируйте размер : Любые корректировки вашего JPEG можно найти в разделе «Инструменты» на панели меню. Выберите «Настроить размер», чтобы открыть новое диалоговое окно под названием «Размеры изображения». Это позволяет вам изменять ширину / высоту, разрешение и другие измерения. Обычному пользователю мы рекомендуем изменить измерение на «процент», а затем выбрать число, которое соответствует вашему целевому размеру. Когда вы измените это значение, в разделе «Результирующий размер» вы точно узнаете, насколько большим будет ваш новый файл.

  3. Сохранить новую версию : После нажатия «ОК» вы сможете увидеть, как изображение выглядит с новым размером. Не бойтесь - вы можете отменить изменения, если все выглядит неправильно. Просто нажмите Command + Z, чтобы отменить. Однако, если вас устраивают результаты, выберите «Файл», а затем «Сохранить как», чтобы создать новую версию вашего JPEG. Дайте ему новое имя, например «[Изображение] Маленькое» или «[Изображение] Веб-версия», и нажмите «Сохранить».

Если вам нужен ярлык для изменения размера фотографий и изображений, Shutterstock создал бесплатное средство для изменения размера изображений.Измените размер изображений за три простых шага: загрузите изображение, выберите нужный размер и загрузите его. .

python - Kivy: Как изменить размер окна?

Переполнение стека
  1. Около
  2. Товары
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
  4. Талант Нанимайте технических специалистов и создавайте свой бренд работодателя
  5. Реклама Обратитесь к разработчикам и технологам со всего мира
  6. О компании

Загрузка…

.

Смотрите также