|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
18.11.2012, 16:08 | #11 |
Пользователь
Регистрация: 16.05.2012
Сообщений: 20
|
Prosolver
Ну на счёт "дырок" я и предлагаю расчитывать цвет пикселей итогового изображения, а не вращать пиксели исходного. А на счёт квадратности пикселей - это ты загнул. Я сомневаюсь что такой алгоритм вообще есть и что в этом есть хоть какой-то смысл. Максимум, можно брать в расчёт девять пикселей. А геометрические расчёты формы и расположения пикселей скорей всего почти ничего не дадут. А учитывая что везде сейчас сжатые форматы с некоторыми потерями, то и вовсе ничего. |
18.11.2012, 20:51 | #12 | |
Пользователь
Регистрация: 17.06.2012
Сообщений: 12
|
Цитата:
А со вторым тезисом не согласен. Выше я уже приводил картинку, показывающую в сравнении результат вращения горизонтальной линии длиной 10 пикселей точным алгоритмом и алгоритмом фотошопа. Так вот я ещё поигрался с фотошопом и обнаружил, что результат меняется в зависимости от того, в каком месте изображения находится горизонтальная линия! Что немыслимо. Получаются такие вот ужасы (сверху - точный поворот на 3 градуса, снизу - фотошоп): А теперь представьте, что изображение у Вас уникальное (например снимок из космоса или скан какой-то редкой рукописи) но его необходимо повернуть и сохранить при этом максимум деталей. Фотошоп в таком случае не годится. |
|
18.11.2012, 21:39 | #13 |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,531
|
алгоритм по ссылке работает с площадями, и качество поворота будет для площадных фигур (не линий), попробуйте повращать закрашенный прямоугольник и пикселей по каждому из направлений >20.
Для поворота линни можно предложить такое 1. превратить линию в прямоугольник (как бы увеличение масштаба) 2. поворот площадных фигур. 3. обратное сжатие и использованием схемы увеличения резкости (это уже "неточное" преобразование).
программа — запись алгоритма на языке понятном транслятору
|
18.11.2012, 21:53 | #14 |
Пользователь
Регистрация: 16.05.2012
Сообщений: 20
|
Ну естественно, это в любом случае будет. Кстати, эта работа фотошопа выглядит неплохо по сравнению с предыдущей. Я полагаю, вторая линия расположена в одной вертикали с точкой вращения, а первая в одной горизонтали. Ну и от удаления зависит.
Последний раз редактировалось Pathoswithin; 18.11.2012 в 21:59. |
18.11.2012, 22:04 | #15 | ||
Пользователь
Регистрация: 17.06.2012
Сообщений: 12
|
evg_m, я думал Вы спрашиваете про алгоритм от _PROGRAMM_.
Алгоритм на С++ посмотрел но с ходу его не понял, но похоже они действительно высчитывают какую-то площадь. У меня нет компилятора С++, поэтому не могу потестировать этот код. Вы бы не могли скинуть мне скомпилированную прогу? prosolver@gmail.com Цитата:
Цитата:
Последний раз редактировалось Prosolver; 18.11.2012 в 22:09. |
||
18.11.2012, 22:33 | #16 |
Пользователь
Регистрация: 16.05.2012
Сообщений: 20
|
Prosolver
Я имел в виду вторые картинки в первом и втором посте. А что это за точный алгоритм который ограничен в угле и размере картинки? Ещё и результат всегда одинаковый выдаёт. Случайно не сферический конь в вакууме? |
18.11.2012, 23:59 | #17 | |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,531
|
Цитата:
программа — запись алгоритма на языке понятном транслятору
|
|
19.11.2012, 08:33 | #18 |
Старожил
Регистрация: 08.02.2012
Сообщений: 2,173
|
Уважаемый Prosolver,
вы изначально пытаетесь решить задачу, решение которой практически невозможно в заданных условиях: желаемое вами достигается линейными преобразованиями, а никак не дискретными. т.е. либо создаёте линейную модель вашей матрицы, преобразовываете и снова приводите к дискретному виду, либо увеличиваете (в 9, 25 , 49 и т.д. раз) исходное изображение, преобразовываете его и снова уменьшаете.
Правильно поставленная задача - три четверти решения.
|
19.11.2012, 11:05 | #19 |
Пользователь
Регистрация: 17.06.2012
Сообщений: 12
|
DiemonStar, так я и делаю. Просто решение получается довольно сложным. Поэтому я и хочу узнать, не изобретаю ли я велосипед и не трачу ли время впустую.
|
19.11.2012, 12:04 | #20 |
Старожил
Регистрация: 08.02.2012
Сообщений: 2,173
|
Второй вариант я бы сложным не назвал - скорее ресурсоёмким. И, судя по практическим реализациям, именно эта методика в основе поворотов основных графических редакторов. Различия только в методах обработки "спорных" пикселей. Но, при любом раскладе, результат поворота линии будет отличаться от подобного результата для векторной графики.
Правильно поставленная задача - три четверти решения.
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Что я не правильно делаю в функции поворота изображения | maxcroud | C# (си шарп) | 2 | 18.06.2012 16:36 |
алгоритм поворота в игре змейка | Xneo | C# (си шарп) | 1 | 27.05.2012 13:29 |
Поворот изображения, матрица поворота | kordax | Помощь студентам | 9 | 19.01.2012 23:21 |
загрузка растрового изображения | Serg16361898 | Помощь студентам | 0 | 01.06.2010 20:15 |
Процедура поворота изображения | Илья PHoeNiX | Общие вопросы Delphi | 3 | 08.06.2008 13:59 |