Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.02.22;
Скачать: CL | DM;

Вниз

Как убрать зазубринки при поворе растра?   Найти похожие ветки 

 
Б   (2009-01-10 22:13) [0]

Как убрать зазубринки при поворе растра?
P.S. Такого сдесь не нашёл.


 
antonn ©   (2009-01-10 22:59) [1]

перед поворотом увеличь его и место его нанесения (раза в 2-4), поверни, потом обратно уменьшь :) Конечно ресурсоемко получится


 
Б   (2009-01-10 23:48) [2]

2 antonn
И что, реально пропадают? И как сильно. :)


 
Б   (2009-01-10 23:50) [3]

Может есть какие-нибудь нормальные методы размытия что ли?


 
Amoeba ©   (2009-01-11 00:26) [4]

Посмотри библиотеку Graphics32.


 
Германн ©   (2009-01-11 02:07) [5]


> Б   (10.01.09 23:48) [2]
>
> 2 antonn
> И что, реально пропадают? И как сильно. :)
>
> Б   (10.01.09 23:50) [3]
>
> Может есть какие-нибудь нормальные методы размытия что ли?
>

Ты про какие "зазубринки"? Про поворот какого растра?  Про какое "размытие"? Говори точнее.
Вот тут я (если бы был модератором) уж точно прекратил обсуждение! Вот тут модератор был бы абсолютно прав. Тут и сам вопрос сформулирован плохо (но в "Начинающим" это как бы допустимо. О чём ясно и недвусмыслено заявлено в "Основной"). Но и на уточняющие вопросы был дан бессмысленный ответ.


 
KilkennyCat ©   (2009-01-11 03:07) [6]


> Про поворот какого растра?  

про поворот вообще ничего не сказано. Сдесь.


 
Б   (2009-01-11 09:48) [7]

> Ты про какие "зазубринки"?
При вращении растра всегда неизбежно возникают зазубринки.
Покрути растр в Фотошопе и увидишь.

> Про поворот какого растра?
И что много таких? 24-разрядные интересуют.
Да и вопрос можной приминить к любому.

> Про какое "размытие"?
Да любое! Которое подходит.

> Тут и сам вопрос сформулирован плохо.
Чё не понятного? Что тут можно ВООБЩЕ добавить? А?
Распиши тогда как Я должен был его сформулировать.
Вот antonn понял.

> про поворот вообще ничего не сказано.
А зачем? Суть то не в этом. ЕЩЁ РАЗ ПОВТОРЯЮ ПРИ ЛЮБОМ ПОВОРОТЕ ВОЗНИКАЮТ ЗАЗУБРИНКИ. Не крутил растры вообще что ли?

> Сдесь.
В Media вопрос выбросили.
И что эта за монера отвечать по подобию?


 
DFT   (2009-01-11 16:58) [8]

поищите в web про anti-aliasing (один из видов размытия изображения, тема довольно обширная)


 
Sapersky   (2009-01-11 17:44) [9]

Поворот растра делается операцией вида DstPixel[x, y] := SrcPixel[sx, sy], при этом sx и sy высчитываются по формулам с использованием синусов-косинусов. Проблема в том, что синусы-косинусы - непрерывны (дробные), а исходная картинка - дискретна (индексы должны быть целыми), при округлении индексов имеем потерю точности и как результат зазубринки. Чтобы уменьшить потерю точности, можно использовать, например, линейную интерполяцию по 4-м пикселям, т.е. высчитываем из 4-х соседних пикселей некий "средний" на основе дробной части sx и sy.
Примерно так:

ix: = Trunc(sx); iy: = Trunc(sy); // целая часть индекса
kx: = Frac(sx); ky: = Frac(sy);   // дробная
px1: = SrcPixel[ix, iy] * (1 - kx) + SrcPixel[ix + 1, iy] * kx; // среднее по горизонтали от верхних двух пикселей
px2: = SrcPixel[ix, iy+1] * (1 - kx) + SrcPixel[ix + 1, iy+1] * kx; // от нижних
DstPixel[x, y] := px1 * (1 - ky) + px2 * ky; // среднее по вертикали


В продвинутых библиотеках все расчёты делаются в целых числах (дробные расчёты эмулируются целыми, т.н. fixed point), поэтому получается более-менее приличная скорость. Например см. FastLIB -> FastFX.pas -> Transform.


 
antonn ©   (2009-01-11 22:25) [10]


> Б   (11.01.09 09:48) [7]

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

Про суперсемплинг - ну довольно хорошо исчезают (мне х2 мало, обычно делаю х4), правда скорость медленная (относительно) и память тратится. В разделе Мультимедия когда то homm давал пример довольно быстрого уменьшения картинки (в 2 и в 4 раза), можно его как нибудь примастрячить.


 
Германн ©   (2009-01-12 02:17) [11]

Удалено модератором


 
KilkennyCat ©   (2009-01-12 07:35) [12]

Удалено модератором



Страницы: 1 вся ветка

Текущий архив: 2009.02.22;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.013 c
15-1230012779
Slider007
2008-12-23 09:12
2009.02.22
С днем рождения ! 23 декабря 2008 вторник


6-1199280101
Venkin
2008-01-02 16:21
2009.02.22
отправить картинку на radikal.ru (INDY)


15-1229522731
@!!ex
2008-12-17 17:05
2009.02.22
Релиз VirtualBox с поддержкой 3D!


15-1230055660
TUser
2008-12-23 21:07
2009.02.22
О теории кайфа


1-1207887296
Fynjy84
2008-04-11 08:14
2009.02.22
Вызов в DLL функции основного приложения