Difference between revisions of "Picture.Noise"
m (1 revision imported) |
|
(No difference)
|
Latest revision as of 08:52, 7 February 2021
Noise (Изменение картинки) | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Функция добавляет шум указанного вида в требуемом количестве в заданный прямоугольник картинки. Функция поддерживает форматы картинки: 32 бит (если картинка имеет другой формат, она будет преобразована в поддерживаемый).
Синтаксис
Picture.Noise(<Координата X верхней левой точки (INT)>,<Координата Y верхней левой точки (INT)>,<Координата X нижней правой точки (INT)>,<Координата Y нижней правой точки (INT)>,<Тип шума (INT)>=0,<Интенсивность шума (REAL)>=50)
Аргументы
<Координата X верхней левой точки (INT)>,<Координата Y верхней левой точки (INT)>,<Координата X нижней правой точки (INT)>,<Координата Y нижней правой точки (INT)>
- Аргументы задают координаты прямоугольника, в который будет добавлен шум.<Тип шума (INT)>
(необязательный аргумент) Аргумент задает тип добавляемого шума, возможны следующие значения аргумента:- 0 (по умолчанию) -- добавляется "белый" шум (случайным образом подбирается интенсивность шума, для использования во всех трех каналах R, G и B)
- 1 -- добавляется "красный" шум (случайным образом подбирается интенсивность шума по каналу R)
- 2 -- добавляется "зеленый" шум (случайным образом подбирается интенсивность шума по каналу G)
- 3 -- добавляется "синий" шум (случайным образом подбирается интенсивность шума по каналу B)
- 4 -- добавляется "цветной" шум (случайным образом подбирается интенсивность шума по каждому из трех каналов R, G и B)
<Интенсивность шума (REAL)>
(необязательный аргумент) Аргумент задает интенсивность (прозрачность) шума. При нуле, шум отсутствует, при 100, оригинальные точки прямоугольника полностью заменяются шумом, значения между представляют собой градиент прозрачности шума. По умолчанию аргумент имеет значение 50. Значение может быть вещественным числом.
Примеры
//Добавление шума разного типа на цветную картинку aPic:=Picture.Create(200,150,toRgb(255,255,255),32); aPic.Ellipse(25,25,175,75,_CLR_YELLOW,_CLR_BLUE,10,1); aPic.Noise(25,25,50,125,0,75); aPic.Noise(55,25,80,125,1,75); aPic.Noise(85,25,110,125,2,75); aPic.Noise(115,25,140,125,3,75); aPic.Noise(145,25,170,125,4,75); //Увеличим картинку в два раза для удобства демонстрации aPic.Resize(400,300,0); aPic.Save("c:\Noise","png");