Масштабирование изображения — Карта знаний
- Масштаби́рование изображения — изменение размера изображения с сохранением пропорций. Под масштабированием подразумевается как увеличение («апскейлинг» от англ. upscaling), так и уменьшение («даунскейлинг», англ. downscaling) разрешения изображения. Широко применяется в компьютерной графике, обработке видео, в частности, реализуется на аппаратном уровне в телевизорах и видеопроигрывателях.
При этом, в зависимости от типа графики (растровая, векторная), масштабирование производится разными алгоритмами. Масштабирование векторных изображений происходит без потерь качества изображения, при увеличении растровых может происходить потеря качества изображения: возможны существенные искажения геометрии мелких деталей и появление ложных узоров на текстурах. Поэтому при масштабировании растровых изображений используются специализированные алгоритмы, сглаживающие нежелательные эффекты.
Источник: Википедия
Связанные понятия
Объемный рендеринг — техника, используемая для получения плоского изображения (проекции) трехмерного дискретного набора данных. Алгори́тмы масштаби́рования пи́ксельной гра́фики — алгоритмы масштабирования цифровых изображений, созданные специально для увеличения качества графики низкого разрешения. В отличие от традиционных алгоритмов масштабирования, дают менее размытую картинку. Вейвлетное сжатие — общее название класса методов кодирования изображений, использующих двумерное вейвлет-разложение кодируемого изображения или его частей. Обычно подразумевается сжатие с потерей качества. Сгла́живание (англ. anti-aliasing) — технология, используемая для устранения эффекта «зубчатости», возникающего на краях одновременно выводимого на экран множества отдельных друг от друга плоских или объёмных изображений. Сглаживание было придумано в 1972 году в Массачусетском технологическом институте в Architecture Machine Group, которая позже стала основной частью Media Lab. Редактирование изображений (лат. redactus — приведённый в порядок) — изменение оригинала изображения классическими или цифровыми методами. Также может обозначаться термином ретуши́рование, ре́тушь (фр. retoucher — подрисовывать, подправлять). Целью редактирования является коррекция дефектов, подготовка к публикации, решение творческих задач. Разреше́ние — величина, определяющая количество точек (элементов растрового изображения) на единицу площади (или единицу длины). Термин обычно применяется к изображениям в цифровой форме, хотя его можно применить, например, для описания уровня грануляции фотоплёнки, фотобумаги или иного физического носителя. Более высокое разрешение (больше элементов) типично обеспечивает более точные представления оригинала. Другой важной характеристикой изображения является разрядность цветовой палитры. Видеокодек — программа/алгоритм сжатия (то есть уменьшения размера) видеоданных (видеофайла, видеопотока) и восстановления сжатых данных. Кодек — файл-формула, которая определяет, каким образом можно «упаковать» видеоконтент и, соответственно, воспроизвести видео. Также возможно кодирование кроме видео и аудиоинформации, добавления субтитров, векторных эффектов и т. п. Ре́ндеринг или отрисовка (англ. rendering — «визуализация») — термин в компьютерной графике, обозначающий процесс получения изображения по модели с помощью компьютерной программы. Массив цветных фильтров (мозаика цветных фильтров) — часть светочувствительной матрицы фотоприбора, осуществляющая пространственное цветоделение изображения при помощи фотодатчиков — пикселей матрицы, расположенных за светофильтрами различного цвета. Каждый светочувствительный элемент накрыт одним светофильтром массива. Нере́зкое маски́рование (англ. unsharp masking) — технологический приём обработки фотографического изображения, который позволяет добиться эффекта ощущения большей резкости изображения за счёт усиления контраста тональных переходов. Реализован в большинстве программных продуктов для профессиональной обработки изображений. Пришёл из плёночной фотографии: в начале XX века весьма трудоёмкий процесс позволял получить тот же эффект, хотя добиться полного контроля над степенью нерезкого маскирования было… Дизеринг, дитеринг (англ. dither от среднеанглийского didderen — дрожать) — при обработке цифровых сигналов представляет собой подмешивание в первичный сигнал псевдослучайного шума со специально подобранным спектром. Применяется при обработке цифрового звука, видео и графической информации для уменьшения негативного эффекта от квантования. Параллакс-скроллинг (также Параллаксная прокрутка) — техника в компьютерной графике, когда фоновые изображения перемещаются относительно виртуальной камеры медленнее, чем изображения переднего плана, что создает иллюзию глубины двумерной сцены и ощущение погружения в виртуальный мир. Эта техника стала развитием техники многоплоскостной камеры, использовавшейся а традиционной анимации с 1930-х годов. Параллакс-скроллинг получил популярность в двумерной компьютерной графике и, в частности, в компьютерных… Бинарное изображение (двухуровневое, двоичное) — разновидность цифровых растровых изображений, когда каждый пиксель может представлять только один из двух цветов.Значения каждого пикселя условно кодируются, как «0» и «1». Значение «0» условно называют задним планом или фоном (англ. background), а «1» —передним планом (англ. foreground).Часто при хранении цифровых бинарных изображений применяется битовая карта, где используют один бит информации для представления одного пикселя. Цифровая обработка изображения — использование компьютерных алгоритмов для обработки цифровых изображений. Как область цифровой обработки сигналов, цифровая обработка изображения имеет много преимуществ перед аналоговой обработкой. Она позволяет применять гораздо более широкий ряд алгоритмов к входным данным и избежать проблем, таких как добавленные шумы и искажения в процессе обработки. Поскольку изображения определяются как двухмерные (или выше), цифровая обработка изображения может быть промоделирована… Пи́ксель, пи́ксел (иногда пэл, англ. pixel, pel — сокращение от piсtures element, которое в свою очередь сокращается до pix element, в некоторых источниках piсture cell — букв. элемент изображений) или элиз (редко используемый русский вариант термина) — наименьший логический элемент двумерного цифрового изображения в растровой графике, или элемент матрицы дисплеев, формирующих изображение. Пиксель представляет собой неделимый объект прямоугольной или круглой формы, характеризуемый определённым цветом… В системах цифрового представления цвета, управление цветом — это контролируемое преобразование между разными моделями представления цвета различных устройств, таких как сканеры, цифровые фото- и видеокамеры, мониторы, экраны телевизоров, принтеры и т. д.Подробнее: Альфа-канал
Сжатие видео (англ. Video compression) — технология цифровой компрессии телевизионного сигнала, позволяющая сократить количество данных, используемых для представления видеопотока. Сжатие видео позволяет эффективно уменьшать поток, необходимый для передачи видео по каналам радиовещания, уменьшать пространство, необходимое для хранения данных на носителе. Недостатки: при использовании сжатия с потерями появляются характерные, иногда отчётливо видные артефакты — например, блочность (разбиение изображения… Компенсация движения (англ. Motion Compensation) — один из основных алгоритмов, применяемых при обработке и сжатии видеоданных. Анизотро́пная фильтра́ция (англ. Anisotropic Filtering, AF) — в трёхмерной графике метод улучшения качества изображения текстур на поверхностях, сильно наклонённых относительно камеры. Трёхмерная графика — раздел компьютерной графики, посвящённый методам создания изображений или видео путём моделирования объёмных объектов в трёхмерном пространстве. Геометрическая карта (англ. geometry map, также известно как англ. geometry image) — двухмерное изображение, которое сохраняет информацию о трёхмерной геометрии. Рельефное текстурирование — метод в компьютерной графике для придания более реалистичного и насыщенного вида поверхности объектов. Научная визуализация — это междисциплинарная отрасль науки. Согласно Фриндли, она «главным образом имеет дело с визуализацией трёхмерных явлений (архитектурных, метеорологических, медицинских, биологических данных и так далее), при этом акцент делается на реалистичное изображение объёмов, поверхностей, источников освещения и так далее, возможно, в динамике (во времени)». Научная визуализация рассматривает также подмножество методов компьютерной графики, раздела информатики. Целью научной визуализации… Растр — точечная структура полутонового изображения, предназначенного для полиграфического воспроизведения методом автотипии. Метод Оцу (англ. Otsu’s method) — это алгоритм вычисления порога бинаризации для полутонового изображения, используемый в области компьютерного распознавания образов и обработки изображений для получения чёрно-белых изображений. Компью́терная гра́фика (также маши́нная графика) — область деятельности, в которой компьютеры наряду со специальным программным обеспечением используются в качестве инструмента, как для создания (синтеза) и редактирования изображений, так и для оцифровки визуальной информации, полученной из реального мира, с целью дальнейшей её обработки и хранения. Артефакты сжатия — это заметные искажения изображения, звука, видео, вызываемые сжатием с потерями. Кросспроцесс или кросспроцессинг — фотографическая обработка одного типа плёнки по другому стандарту. Чаще всего таким образом проявляют негативную цветную плёнку (процесс C-41) как цветную обращаемую плёнку (процесс E-6) и наоборот. Гистогра́мма (в фотографии) — это график статистического распределения элементов цифрового изображения с различной яркостью, в котором по горизонтальной оси представлена яркость, а по вертикали — относительное число пикселей с конкретным значением яркости. Чересстрочная развёртка — метод телевизионной развёртки, при котором каждый кадр разбивается на два полукадра (или поля), составленные из строк, выбранных через одну. В первом поле развёртываются и воспроизводятся нечётные строки, во втором — чётные строки, располагающиеся в промежутках между строками первого поля. После окончания развёртки второго поля луч возвращается в точку, соответствующую началу развёртки первого поля, и т. д. Чересстрочная развёртка является компромиссом между критической… Автостереограмма — вид стереограммы, которая даёт стереоскопический (объёмный) эффект без каких-либо внешних сепарирующих приспособлений, таких как затворные очки, очки с поляризационными фильтрами, анаглиф. Келл-фактор (англ. Kell factor) или коэффициент Келла определяет отношение между ожидаемым и полученным разрешением изображения. Эта величина задана известным американским исследователем, в честь которого и назван коэффициент, и на данный момент является используемой величиной для характеристики потери качества при записи и воспроизведении видеоизображения. Келл-фактор может быть применим к разрешающей способности, которую выдает ПЗС формирователь с матрицы в фактическое изображение на монитор по… Обработка изображений — любая форма обработки информации, для которой входные данные представлены изображением, например, фотографиями или видеокадрами. Обработка изображений может осуществляться как для получения изображения на выходе (например, подготовка к полиграфическому тиражированию, к телетрансляции и т. д.), так и для получения другой информации (например, распознание текста, подсчёт числа и типа клеток в поле микроскопа и т. д.). Кроме статичных двухмерных изображений, обрабатывать требуется… Цветовая субдискретизация (англ. Chroma subsampling) — технология кодирования изображений со снижением цветового разрешения, при которой частота выборки цветоразностных сигналов может быть меньше частоты выборки яркостного сигнала. Основана на особенности человеческого зрения, выраженной большей чувствительностью к перепадам яркости, чем цвета. Цветовая субдискретизация является важным способом снижения размера цифрового потока видеоданных (цифровое сжатие видеоинформации). Используется в системах… Поиск изображений по содержанию (англ. Content-based image retrieval (CBIR)) — раздел компьютерного зрения, решающий задачу поиска изображений, которые имеют требуемое содержание, в большом наборе цифровых изображений. Векторная графика — способ представления объектов и изображений (формат описания) в компьютерной графике, основанный на математическом описании элементарных геометрических объектов, обычно называемых примитивами, таких как: точки, линии, сплайны, кривые Безье, круги и окружности, многоугольники. Стандартное тестовое изображение — цифровой файл, содержащий изображение, служащий для тестирования алгоритмов обработки и сжатия. Использование одинаковых стандартных изображений позволяет различным лабораториям сравнивать свои результаты. В большинстве случаев отбираются такие изображения, с подобными которым и будет использоваться класс техник обработки. Другие изображения выбираются с целью проверки алгоритмов восстановления изображений, например, алгоритмов воспроизведения деталей и текстур… Ма́трица или светочувстви́тельная ма́трица — специализированная аналоговая или цифро-аналоговая интегральная микросхема, состоящая из светочувствительных элементов — фотодиодов.Подробнее: Фотоматрица
Графи́ческие програ́ммы — программное обеспечение, позволяющее создавать, редактировать или просматривать графические файлы. Свёрточная нейронная сеть (англ. convolutional neural network, CNN) — специальная архитектура искусственных нейронных сетей, предложенная Яном Лекуном в 1988 году и нацеленная на эффективное распознавание образов, входит в состав технологий глубокого обучения (англ. deep learning). Использует некоторые особенности зрительной коры, в которой были открыты так называемые простые клетки, реагирующие на прямые линии под разными углами, и сложные клетки, реакция которых связана с активацией определённого… Вы́леты развёртки (англ. Overscan) — внешняя часть телевизионного растра, не отображаемая на большинстве кинескопных телевизоров из-за наличия пустой области и возможных искажений в этой части изображения. В аналоговом телевидении выполняют функцию, аналогичную печатным вылетам в полиграфии.kartaslov.ru
Без потери качества масштабируются — Если не сложную картинку jpg сохранить в векторном формате, можно ли ее будет масштабировать без потери качества? — 2 ответа
Без потери качества масштабируются изображения
Автор Ultramarine задал вопрос в разделе Другие языки и технологии
Если не сложную картинку jpg сохранить в векторном формате, можно ли ее будет масштабировать без потери качества? и получил лучший ответ
Ответ от Ёидороff[гуру]
Продолжение ответов.
Как уже здесь объяснили, растровую картинку ни сохранить, ни конвертировать в векторную нельзя. Её можно только создать заново в векторном редакторе. Создать её можно либо трассировкой растровой картинки, либо отрисовать вручную использовав растровую как исходник. Но в любом случае, это будет уже не та растровая картинка которая была изначально.
Небольшой пример. Яблочко в формате Jpg и векторный рисунок сделаный по этой картинке —
Блин, а отрисованный аэрографом мне нравится значительно больше 🙂
P.S. И спасибо Photo-Graph’у за комплимент 🙂
P.P.S. Показан пример увеличения этого яблочка до 1600% без какой-либо потери качества 🙂
Сидороff
Мыслитель
(8764)
Прошу прощения. Вопрос-то о векторе был. А смысла отрисовывать в векторе диалоговые окна нет. Гораздо проще воспользоваться какой-нибудь программкой для увеличения растровых изображений с минимальной потерей качества. Весьма неплохо показал себя PhotoZoom. А может проще увеличить сами диалоговые окна и несколько строк текста, и делать скрины с уже увеличенных окон.
Привет! Вот подборка тем с ответами на Ваш вопрос: Если не сложную картинку jpg сохранить в векторном формате, можно ли ее будет масштабировать без потери качества?
Ответ от Александр Мезенин[гуру]
Да, без проблем
Ответ от Sss[гуру]
вектор можно масштабировать до бесконечности
но вот как перевести растровое изображение в вектор — мне совершенно непонятно
разве что обрисовать вручную или оттрассировать — ну так эта задача сама по себе весьма неординарная
Ответ от Tatis[гуру]
Вы можете вставить jpg в одну из векторных программ — в Иллюстратор или Корел — и даже сохранить как файл иллюстратора или корела (по умолчанию векторный) .
Но содержимое файла векторным не станет, оно останется растровым.
Векторные файлы поддерживают растровые включения.
Нет. Джипег который не отрисован (не трассирован) в вектор при масштабировании будет точно так же как и в фотошопе (и где угодно) терять в качестве.
Ответ от Photo-Graph[гуру]
Продолжение ответов
…
Да и смысла трассировать изображение нет. Автоматизированная трассировка обычно имеет такие костыли, что допиливание напильником обычно куда дольше, чем отрисовка с нуля.
Что касается фото — тут отдельный разговор, т. к. и трассировка должного не даст, а отрисовка от руки с фото-реалом — это высший пилотаж от джедаев векторной графики.
Короче, мой вывод — нельзя. Теоретически осуществимо, но трассировка все равно не даст годного эффекта, поэтому практическое применение весьма узкое — когда надо отмолотить в векторе какой-то простенький логотип, без градиентов и прочих спецэффектов
Ответ от Flash[новичек]
Если морда не толстая то масштабируется
Ответ от 2 ответа[гуру]
Привет! Вот еще темы с похожими вопросами:
Масштабирование изображения на Википедии
Посмотрите статью на википедии про Масштабирование изображения
2oa.ru
методы ресайза изображений / Habr
Почему изображение, масштабированное с бикубической интерполяцией, выглядит не как в Фотошопе. Почему одна программа ресайзит быстро, а другая — нет, хотя результат одинаковый. Какой метод ресайза лучше для увеличения, а какой для уменьшения. Что делают фильтры и чем они отличаются.Вообще, это было вступлением к другой статье, но оно затянулось и вылилось в отдельный материал.
Этот человек сидит среди ромашек, чтобы привлечь ваше внимание к статье.
Для наглядного сравнения я буду использовать изображения одинакового разрешения 1920×1280 (одно, второе), которые буду приводить к размерам 330×220, 1067×667 и 4800×3200. Под иллюстрациями будет написано, сколько миллисекунд занял ресайз в то или иное разрешение. Цифры приведены лишь для понимания сложности алгоритма, поэтому конкретное железо или ПО, на котором они получены, не так важно.
Ближайший сосед (Nearest neighbor)
Это самый примитивный и быстрый метод. Для каждого пикселя конечного изображения выбирается один пиксель исходного, наиболее близкий к его положению с учетом масштабирования. Такой метод дает пикселизированное изображение при увеличении и сильно зернистое изображение при уменьшении.
Вообще, качество и производительность любого метода уменьшения можно оценить по отношению количества пикселей, участвовавших в формировании конечного изображения, к числу пикселей в исходном изображении. Чем больше это отношение, тем скорее всего алгоритм качественнее и медленнее. Отношение, равное одному, означает что как минимум каждый пиксель исходного изображения сделал свой вклад в конечное. Но для продвинутых методов оно может быть и больше одного. Дак вот, если например мы уменьшаем изображение методом ближайшего соседа в 3 раза по каждой стороне, то это соотношение равно 1/9. Т.е. большая часть исходных пикселей никак не учитывается.
1920×1280 → 330×220 = 0,12 ms
1920×1280 → 1067×667 = 1,86 ms
1920×1280 → 4800×3200 = 22,5 ms
Теоретическая скорость работы зависит только от размеров конечного изображения. На практике при уменьшении свой вклад вносят промахи кеша процессора: чем меньше масштаб, тем меньше данных используется из каждой загруженной в кеш линейки.
Метод осознанно применяется для уменьшения крайне редко, т.к. дает очень плохое качество, хотя и может быть полезен при увеличении. Из-за скорости и простоты реализации он есть во всех библиотеках и приложениях, работающих с графикой.
Аффинные преобразования (Affine transformations)
Аффинные преобразования — общий метод для искажения изображений. Они позволяют за одну операцию повернуть, растянуть и отразить изображение. Поэтому во многих приложениях и библиотеках, реализующих метод аффинных преобразований, функция изменения изображений является просто оберткой, рассчитывающей коэффициенты для преобразования.
Принцип действия заключается в том, что для каждой точки конечного изображения берется фиксированный набор точек исходного и интерполируется в соответствии с их взаимным положением и выбранным фильтром. Количество точек тоже зависит от фильтра. Для билинейной интерполяции берется 2×2 исходных пикселя, для бикубической 4×4. Такой метод дает гладкое изображение при увеличении, но при уменьшении результат очень похож на ближайшего соседа. Смотрите сами: теоретически, при бикубическом фильтре и уменьшении в 3 раза отношение обработанных пикселей к исходным равно 4² / 3² = 1,78. На практике результат значительно хуже т.к. в существующих реализациях окно фильтра и функция интерполяции не масштабируются в соответствии с масштабом изображения, и пиксели ближе к краю окна берутся с отрицательными коэффициентами (в соответствии с функцией), т.е. не вносят полезный вклад в конечное изображение. В результате изображение, уменьшенное с бикубическим фильтром, отличается от изображения, уменьшенного с билинейным, только тем, что оно еще более четкое. Ну а для билинейного фильтра и уменьшения в три раза отношение обработанных пикселей к исходным равно 2² / 3² = 0.44, что принципиально не отличается от ближайшего соседа. Фактически, аффинные преобразования нельзя использовать для уменьшения более чем в 2 раза. И даже при уменьшении до двух раз они дают заметные эффекты лесенки для линий.
Теоретически, должны быть реализации именно аффинных преобразований, масштабирующие окно фильтра и сам фильтр в соответствии с заданными искажениями, но в популярных библиотеках с открытым исходным кодом я таких не встречал.
1920×1280 → 330×220 = 6.13 ms
1920×1280 → 1067×667 = 17.7 ms
1920×1280 → 4800×3200 = 869 ms
Время работы заметно больше, чем у ближайшего соседа, и зависит от размера конечного изображения и размера окна выбранного фильтра. От промахов кеша уже практически не зависит, т.к. исходные пиксели используются как минимум по двое.
Мое скромное мнение, что использование этого способа для произвольного уменьшения изображений попросту является багом, потому что результат получается очень плохой и похож на ближайшего соседа, а ресурсов на этот метод нужно значительно больше. Тем не менее, этот метод нашел широкое применение в программах и библиотеках. Самое удивительное, что этот способ используется во всех браузерах для метода канвы drawImage()
(наглядный пример), хотя для простого отображения картинок в элементе используются более аккуратные методы (кроме IE, в нем для обоих случаев используются аффинные преобразования). Помимо этого, такой метод используется в OpenCV, текущей версии питоновской библиотеки Pillow (об этом я надеюсь написать отдельно), в Paint.NET.
Кроме того, именно этот метод используется видеокартами для отрисовки трехмерных сцен. Но разница в том, что видеокарты для каждой текстуры заранее подготавливают набор уменьшенных версий (mip-уровней), и для окончательной отрисовки выбирается уровень с таким разрешением, чтобы уменьшение текстуры было не более двух раз. Кроме этого, для устранения резкого скачка при смене mip-уровня (когда текстурированный объект приближается или отдаляется), используется линейная интерполяция между соседними mip-уровнями (это уже трилинейная фильтрация). Таким образом для отрисовки каждого пикселя трехмерного объекта нужно интерполировать между 2³ пикселями. Это дает приемлемый для быстро движущейся картинки результат за время, линейное относительно конечного разрешения.
Суперсемплинг (Supersampling)
С помощью этого метода создаются те самые mip-уровни, с помощью него (если сильно упростить) работает полноэкранное сглаживание в играх. Его суть в разбиении исходного изображения по сетке пикселей конечного и складывании всех исходных пикселей, приходящихся на каждый пиксель конечного в соответствии с площадью, попавшей под конечный пиксель. При использовании этого метода для увеличения, на каждый пиксель конечного изображения приходится ровно один пиксель исходного. Поэтому результат для увеличения равен ближайшему соседу.
Можно выделить два подвида этого метода: с округлением границ пикселей до ближайшего целого числа пикселей и без. В первом случае алгоритм становится малопригодным для масштабирования меньше чем в 3 раза, потому что на какой-нибудь один конечный пиксель может приходиться один исходный, а на соседний — четыре (2×2), что приводит к диспропорции на локальном уровне. В то же время алгоритм с округлением очевидно можно использовать в случаях, когда размер исходного изображения кратен размеру конечного, или масштаб уменьшения достаточно мал (версии разрешением 330×220 почти не отличаются). Отношение обработанных пикселей к исходным при округлении границ всегда равно единице.
1920×1280 → 330×220 = 7 ms
1920×1280 → 1067×667 = 15 ms
1920×1280 → 4800×3200 = 22,5 ms
Подвид без округления дает отличное качество при уменьшении на любом масштабе, а при увеличении дает странный эффект, когда большая часть исходного пикселя на конечном изображении выглядит однородной, но на краях видно переход. Отношение обработанных пикселей к исходным без округления границ может быть от единицы до четырех, потому что каждый исходный пиксель вносит вклад либо в один конечный, либо в два соседних, либо в четыре соседних пикселя.
1920×1280 → 330×220 = 19 ms
1920×1280 → 1067×667 = 45 ms
1920×1280 → 4800×3200 = 112 ms
Производительность этого метода для уменьшения ниже, чем у аффинных преобразований, потому что в расчете конечного изображения участвуют все пиксели исходного. Версия с округлением до ближайших границ обычно быстрее в несколько раз. Также возможно создать отдельные версии для масштабирования в фиксированное количество раз (например, уменьшение в 2 раза), которые будут еще быстрее.
Данный метод используется в функции gdImageCopyResampled()
библиотеки GD, входящей в состав PHP, есть в OpenCV (флаг INTER_AREA), Intel IPP, AMD Framewave. Примерно по такому же принципу работает libjpeg, когда открывает изображения в уменьшенном в несколько раз виде. Последнее позволяет многим приложениям открывать изображения JPEG заранее уменьшенными в несколько раз без особых накладных расходов (на практике libjpeg открывает уменьшенные изображения даже немного быстрее полноразмерных), а затем применять другие методы для ресайза до точных размеров. Например, если нужно отресайзить JPEG разрешением 1920×1280 в разрешение 330×220, можно открыть оригинальное изображение в разрешении 480×320, а затем уменьшить его до нужных 330×220.
Свертки (Convolution)
Этот метод похож на аффинные преобразования тем, что используются фильтры, но имеет не фиксированное окно, а окно, пропорциональное масштабу. Например, если размер окна фильтра равен 6, а размер изображения уменьшается в 2,5 раза, то в формировании каждого пикселя конечного изображения принимает участие (2,5 * 6)² = 225 пикселей, что гораздо больше, чем в случае суперсемплинга (от 9 до 16). К счастью, свертки можно считать в 2 прохода, сначала в одну сторону, потом в другую, поэтому алгоритмическая сложность расчета каждого пикселя равна не 225, а всего (2,5 * 6) * 2 = 30. Вклад каждого исходного пикселя в конечный как раз определяется фильтром. Отношение обработанных пикселей к исходным целиком определяется размером окна фильтра и равно его квадрату. Т.е. для билинейного фильтра это отношение будет 4, для бикубического 16, для Ланцоша 36. Алгоритм прекрасно работает как для уменьшения, так и для увеличения.
1920×1280 → 330×220 = 76 ms
1920×1280 → 1067×667 = 160 ms
1920×1280 → 4800×3200 = 1540 ms
Скорость работы этого метода зависит от всех параметров: размеров исходного изображения, размера конечного изображения, размера окна фильтра.
Именно этот метод реализован в ImageMagick, GIMP, в текущей версии Pillow с флагом ANTIALIAS.
Одно из преимуществ этого метода в том, что фильтры могут задаваться отдельной функцией, никак не привязанной к реализации метода. При этом функция самого фильтра может быть достаточно сложной без особой потери производительности, потому что коэффициенты для всех пикселей в одном столбце и для всех пикселей в одной строке считаются только один раз. Т.е. сама функция фильтра вызывается только (m + n) * w раз, где m и n — размеры конечного изображения, а w — размер окна фильтра. И наклепать этих функций можно множество, было бы математическое обоснование. В ImageMagick, например, их 15. Вот как выглядят самые популярные:
Билинейный фильтр (bilinear
или triangle
в ImageMagick)
Бикубический фильтр (bicubic
, catrom
в ImageMagick)
Фильтр Ланцоша (Lanczos
)
Примечательно, что некоторые фильтры имеют зоны отрицательных коэффициентов (как например бикубический фильтр или фильтр Ланцоша). Это нужно для придания переходам на конечном изображении резкости, которая была на исходном.
habr.com
Масштабирование изображения Википедия
Масштаби́рование изображения — изменение размера изображения с сохранением пропорций. Под масштабированием подразумевается как увеличение («апскейлинг» от англ. upscaling), так и уменьшение («даунскейлинг», англ. downscaling) разрешения изображения. Широко применяется в компьютерной графике, обработке видео, в частности, реализуется на аппаратном уровне в телевизорах и видеопроигрывателях.
При этом, в зависимости от типа графики (растровая, векторная), масштабирование производится разными алгоритмами. Масштабирование векторных изображений происходит без потерь качества изображения, при увеличении растровых может происходить потеря качества изображения: возможны существенные искажения геометрии мелких деталей и появление ложных узоров на текстурах. Поэтому при масштабировании растровых изображений используются специализированные алгоритмы, сглаживающие нежелательные эффекты.
Методы масштабирования[ | ]
Размер изображения может быть изменён несколькими способами. Простейшим способом удвоения разрешения является метод копирования ближайшего пиксела, заменяющий каждый пиксель четырьмя пикселями того же цвета, при этом изображение, сохраняя детали оригинала, приобретает нежелательный «лестничный эффект». Этот же способ может быть применён для более тонких изменений разрешения, например, для масштаба 99 % или 101 % соответственно убирают или дублируют каждую сотую точку.
Метод билинейной интерполяции обеспечивает некоторое сохранение гладкости контуров рисунка, но иногда вызывает нежелательные эффекты сглаживания деталей и всё равно порождает довольно заметный «эффект лестницы». Более совершенным методом является использование бикубической интерполяции.
Для увеличения малоцветных изображений в малом разрешении лучше всего подходят
ru-wiki.ru
Почему векторные изображения могут быть легко масштабированы без потери качества?
В векторной графике изображение состоит из геометрических фигур, в отличии от растровой где рисунок состоит из точек. Поэтому при масштабировании векторной графики мы изменяем размер геометрических фигур.
Для компьютера описание векторных объектов представляются в виде команд, каждая из которых определяет некоторую функцию и соответствующие ей параметры.
Информация о цвете объекта сохраняется как часть его описания, т. е. в виде векторной команды (сравните: для растровых изображений хранится информация о цвете каждого видеопикселя).
Большинство векторных программ позволяют только разместить растровый рисунок в векторной иллюстрации, изменить его размер, выполнить перемещение и поворот, обрезку, однако изменить в нём отдельные пиксели невозможно. Дело в том, что векторные изображения состоят из отдельных объектов, с которыми можно работать порознь. С растровыми же изображениями так поступать нельзя, так как пиксели нельзя классифицировать подобным образом (объектом здесь является весь растровый фрагмент в целом). Пиксель же обладает одним свойством — цветом. Поэтому в некоторых векторных редакторах к растровым объектам допускается применять специальные эффекты размытия и резкости, в основе которых лежит изменение цветов соседних пикселей”
Для решения каких задач используются растровые программы?
Растровая графика позволяет создавать изображения фотографического качества. Ведь что такое растровая графика: это изображение, состоящее из пикселей — маленьких квадратиков, каждому из которых присвоен определенный цвет. На любом дисплее информация отображается именно в растровом виде.
Растровые программы предназначены в основном для редактирования изображений, обеспечивая возможность цветокоррекции, ретуши и создания специальных эффектов на базе цифровых изображений. Пользуясь программными продуктами для формирования изображений, такими как Adobe Photoshop или Corel PHOTO-PAINT, можно создавать коллажи, виньетки, фотомонтажи и подготавливать цветные изображения для вывода на печать. На сегодняшний день программы редактирования изображений используются при производстве практически всех печатных изображений, где необходима фотография. Их применяют для стирания морщин с лиц моделей, придания ярких красок мрачным и пасмурным дням и изменения общего настроения посредством специальных световых эффектов. Они также широко используются производителями мультимедиа для создания текстовых и фоновых эффектов и для изменения количества цветов изображения.
Что означает термин «формат графического файла»?
Формат графического файла— способ представления и расположения графических данных на внешнем носителе. То есть, графический формат — это способ записи графической информации. Графические форматы файлов предназначены для хранения изображений, таких как фотографии и рисунки, чертежи, и т.п. Графические форматы делятся на векторные и растровые. Формат — это некоторое описание (спецификация) того, что именно, где и в каком виде должно быть представлено в файле.
Пользователю графической программы не требуется знать, как именно в том или ином формате хранится информация о графических данных. Однако умение разбираться в особенностях форматов имеет большое значение для эффективного хранения изображений и организации обмена данными между различными приложениями.
Различают векторныеи растровыеформаты.
Всё множество форматов, используемых для записи изображений, можно условно разделить на три категории:
— форматы, хранящие изображение в растровом виде;
— форматы, хранящие изображение в векторном виде;
— универсальные форматы, совмещающие векторное и растровое представление.
Графический формат — это формат, в котором данные, описывающие графическое изображение, записаны в файле. Графические форматы разработаны для того, чтобы эффективно и логично организовывать, сохранять и восстанавливать графические данные. Кроме того, графические файлы — важное «транспортное средство», обеспечивающее обмен визуальными данными между программами и компьютерными системами.
Под графическими файлами подразумеваются файлы, в которых хранятся любые типы устойчивых графических данных (в отличие, например, от текста, электронной таблицы или цифровых данных), предназначенные для последующей визуализации. Когда изображение сохраняется в файле, то содержимое этого файла уже не является изображением, а становится устойчивыми графическими данными. Эти данные теперь нуждаются в повторной визуализации (как виртуальные графические данные). После записи в файл изображение перестало быть изображением — оно превратилось в данные, причем формат этих данных может измениться, например в результате операций преобразования файла. Изображение, сохраненное в файле формата 1, может быть преобразовано в другой файл — формата 2. Формат, используемый для пересылки данных из одной программы в другую, тоже может быть графическим. Некоторые форматы, например TIFF, CGM и GIF, были специально разработаны для межпрограммного обмена данными.
В компьютерной графике применяют, по меньшей мере, три десятка форматов файлов для хранения изображений. Но лишь часть из них применяется в подавляющем большинстве программ. Как правило, несовместимые форматы имеют файлы растровых, векторных, трехмерных изображений, хотя существуют форматы, позволяющие хранить данные разных классов. Многие приложения ориентированы на собственные «специфические» форматы, перенос их файлов в другие программы вынуждает использовать специальные фильтры или экспортировать изображения в «стандартный» формат. Форматы графических файлов. BMP, TIFF, JPEG, GIF, PNG и другие форматы.
В зависимости от характера поддерживаемой графики форматы файлов относят к одному из следующих видов: растровый формат, векторный формат или метафайловый формат.
studopedia.net
При масштабировании в фотошопе ухудшается качество рисунка.
любое отличие от 100% масштаба ухудшает качество.. все так и должно быть.. ..все что вы можете сделать — выбрать метод интерполяции в настройках
так качественная визуализация на экран выводится только 100%, еще кратно, например 50%, 25%, промежуточные проценты вам просто для удобства работы, а не для рассмотрения деталей. На качество в самом файле это никак не влияет
Действительно. Судя по всему меняются и цвет текста и форма шрифта. Вот чертовщина то )
Значит все работает как надо.
Масштабируй ещё — увидишь пиксели . Картинка совсем г-но будет ! <img src=»//otvet.imgsmail.ru/download/236554002_14300622acbd04ad5c3f9a4200ec1473_800.gif» data-lsrc=»//otvet.imgsmail.ru/download/236554002_14300622acbd04ad5c3f9a4200ec1473_120x120.gif» data-big=»1″>
Ну естественно, это же РАСТРОВЫЙ редактор! Так было, так есть и так будет: масштабирование пикселей приводит к такой картине, но пока вы масштабируете экран а не файл, ничего страшного в этом нет, на содержание не влияет. Хотите знать истину — смотрите в масштабе 100%.
сам недавно с этим столкнулся, почитайте про смарт объекты, станет ясно.
touch.otvet.mail.ru
без потери качества масштабируются какие изображения
Автор ChEхи задал вопрос в разделе Другие языки и технологии
как растянуть изображение без потери качества. качества масштабирования в фотошопе не хватает, нужно качественнее и получил лучший ответ
Ответ от
Существуют специальные программы для этого. Но и в Фотошопе можно кое-что предпринять: при изменении размеров нужно выбрать не пикселы, а проценты и добавлять каждый раз по 10%, т. е. изображение по умолчанию будет 100х100%, а нужно выставлять 110х110%. И так до тех пор, пока не добьетесь нужного размера. Довольно муторно, но это единственная возможность увеличить размер в Фотошопе без особой потери качества.
Можно, правда, сделать экшен и присвоить ему какую-то комбинацию клавиш, если делаете это постоянно, тогда все пойдет быстрее
Этот способ описывал Стив Келби в своей книге.
Привет! Вот подборка тем с ответами на Ваш вопрос: как растянуть изображение без потери качества. качества масштабирования в фотошопе не хватает, нужно качественнее
Ответ от 1ламер[гуру]
никак
Ответ от Gnome-forever[гуру]
за уши попробуй..
Ответ от Дима Евсеенков[гуру]
Никак, минимизировать потери можно только растянув за несколько приёмов, хотя и это поможет незначительно.
Ответ от Wowa Cherkesov[гуру]
бесполезно
Ответ от Алексей Миловидов[гуру]
Запомните раз и навсегда, без потери качества изображение больше чем на 15% увеличить не получится.
Ответ от Max[новичек]
Можно отмасштабированное отфильтровать например Smart sharpen или Noise-Dust&Scratches чтобы помятости убрать, но если исходник слишком мал то это не поможет
Ответ от Меля[новичек]
Плагин для Potoshop CS PhotoZoom Pro 3 на 85-95% сохраняет качество
я брал здесь ссылка
Ответ от 2 ответа[гуру]
Привет! Вот еще темы с похожими вопросами:
2oa.ru
Станьте первым комментатором