Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.55/22: Рейтинг темы: голосов - 22, средняя оценка - 4.55
9 / 9 / 0
Регистрация: 14.02.2010
Сообщений: 126
1

Масштабирование

05.01.2012, 00:25. Показов 4301. Ответов 8
Метки нет (Все метки)

Здравствуйте.
Не могли бы вы подсказать реализацию/теорию(где почитать) про алгоритмы масштабирования? У меня есть монохромные матрицы из нулей-единиц, которые надо растянуть/уменьшить, привести к эталонной. Думаю, подойдут даже самые простейшие алгоритмы с большими искажениями.
Спасибо.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.01.2012, 00:25
Ответы с готовыми решениями:

Масштабирование на Canvas
Здравствуйте , в универе дали задачку которая поставила в ступор.В чём суть : есть множество точек...

Масштабирование графика функции
Здравствуйте. Написал программу, строящую один из трех графиков функции в зависимости от выбора...

Автоматической масштабирование графика
Не могу понять как реализовать масштабирование, чтобы при больших/малых значениях функции...

Масштабирование числовой прямой
Незнаю куда запостить такой вопрос, поэтому в случае чего перенесите Имеется шкала(допустим от 0...

__________________

Записывайтесь на профессиональные курсы C++ разработчиков
8
Псевдослучайный
1939 / 1139 / 97
Регистрация: 13.09.2011
Сообщений: 3,209
05.01.2012, 00:37 2
Если с искажениями, то можно банально
C
1
2
3
float factor = 1.5;//коэффициен увеличения
...
out[i] = in[i / factor];
Для одномерного случая
1
9 / 9 / 0
Регистрация: 14.02.2010
Сообщений: 126
05.01.2012, 00:47  [ТС] 3
Спасибо, сейчас попробую разобрать и переделать для двумерного.

Вопрос в главной строчке перобразования - как это?
Присвоить i-тому элементу выходного массива значение возможно нецелого элемента? В смысле, если i будет равно пяти - что получится?
0
Модератор
Эксперт по электронике
8380 / 6225 / 836
Регистрация: 14.02.2011
Сообщений: 21,605
05.01.2012, 00:53 4
Цитата Сообщение от Eugene THE BEST Посмотреть сообщение
Не могли бы вы подсказать реализацию/теорию(где почитать)
поищи про Аппроксимацию
книги про компьютерную графику
была такая книга
"Обработка компьютерной графики на С"
просто книга "Компьютерная графика" там про ассемблер но теория обработки изображений хорошо изложена
завтра закину данные
посмотри про ДиректХ обработка при помощи матриц
1
Псевдослучайный
1939 / 1139 / 97
Регистрация: 13.09.2011
Сообщений: 3,209
05.01.2012, 00:54 5
Будет каст к целому(отбрасыванием дробной части), т.е. 3
1
9 / 9 / 0
Регистрация: 14.02.2010
Сообщений: 126
05.01.2012, 00:56  [ТС] 6
Нашел один способ в гуглокодах, но, чувствую, разбираться долго придется.
http://code.google.com/p/hqx/s... src/hq2x.c
Вроде как разобрался с интерполяцией "методом ближайшего соседа", но никак не могу понять, как поступить, если нужно а) увеличивать/уменьшать в нецелое число раз и б) увеличение/уменьшение неоднородно, щирина с длиной изменяются в разное кол-во раз.
Помогите пожалуйста, очень нужно.
0
Модератор
Эксперт по электронике
8380 / 6225 / 836
Регистрация: 14.02.2011
Сообщений: 21,605
05.01.2012, 00:56 7
Цитата Сообщение от Eugene THE BEST Посмотреть сообщение
В смысле, если i будет равно пяти - что получится?
хапнет из 4 элемента
5/1.5=3.33333 = 3 4 элемент
1
9 / 9 / 0
Регистрация: 14.02.2010
Сообщений: 126
05.01.2012, 00:58  [ТС] 8
ValeryS, Спасибо, обязательно поищу эти книги.

NoMasters, Хорошо, спасибо, надо на практике проверить, подойдет ли такой способ по кач-ву, или много потеряется.
0
Модератор
Эксперт по электронике
8380 / 6225 / 836
Регистрация: 14.02.2011
Сообщений: 21,605
05.01.2012, 01:10 9
посмотри
http://ermak.cs.nstu.ru/kg_rivs/graf.htm
сейчас взглянул мельком
вроде нормально описано при помощи матриц
http://ermak.cs.nstu.ru/kg_riv... h_sEc0.1.1

Добавлено через 7 минут
для целого увеличения / уменьшения все просто
для увеличения из одной ячейки считаваешь сколько раз нужно увеличить
для уменьшения через ячейку, две,три
для дробного например в полтора раза - увеличил на три уменьшил на два
качество будет не ахти
если работаешь под виндой то можешь создать из своей матрицы картинку
масштабировать её методами GDI GDIPlus DirectX
и считать что получится
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.01.2012, 01:10

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Масштабирование и поворот треугольника
Нужно построить треугольник и произвести с ним два действия 1) Масштабирование треугольника...

Масштабирование геометрических фигур
Было задание: Построить систему классов для описания плоских геометрических фигур: круг, квадрат,...

Урок геометрии, масштабирование изображений
Задача: Есть картинка 100x100 px на которой нарисован смайлик необходимо наложить этот смайлик...

SDL2 BlitScaled и прозрачность - масштабирование изображения
Здравствуйте. Пару дней назад начал работать с SDL2, возникла некоторая проблема, никак не могу...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.