Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Pixel Bender/AGAL (http://www.flasher.ru/forum/forumdisplay.php?f=100)
-   -   Выборка пикселей (http://www.flasher.ru/forum/showthread.php?t=181122)

TanaTiX 16.06.2012 14:53

Выборка пикселей
 
Решил все же глянуть на этого "зверя". Как я могу получить доступ к определенному количеству пикселей (сразу), заданному в качестве входного значения? Как получить значение одиночного пикселя по координатам знаю, нескольких - нет. Я правильно понимаю, что в ПБ отсутствуют циклы? Как правильно поступать в таких ситуациях?

Zebestov 27.06.2012 12:53

Циклы да, отсутствуют ( из-за этого приходится копировать строки вручную. А как поступать — уже по месту решать надо, либо отступить, либо исхитриться )

TanaTiX 27.06.2012 12:59

Исхитриться? :) Изначально была идея написать простенький blur с указанием интенсивности и направления (горизонтально и вертикально). В сети как-то не очень оптимистично. Был бы рад подсказке.

Zebestov 27.06.2012 13:04

Суть.

fish_r 09.07.2012 21:22

Вот, кстати говоря - блур это конечно хорошо. А вот фильтр резкости был бы ещё лучше. В фотошопе можно резкость увеличить ( прямого фильтра нет, но с помощью несложных манипуляций), а во флеше нет. Хорошая была бы вещица...

mooncar 09.07.2012 22:01

Цитата:

Сообщение от fish_r (Сообщение 1087981)
В фотошопе можно резкость увеличить ( прямого фильтра нет, но с помощью несложных манипуляций)

Сорри за офтоп, как же нет? А фильтры из набора группы Sharpen?

fish_r 09.07.2012 22:34

Цитата:

Сообщение от mooncar (Сообщение 1087989)
Сорри за офтоп, как же нет? А фильтры из набора группы Sharpen?

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

i.o. 10.07.2012 00:20

Цитата:

Сообщение от fish_r (Сообщение 1087981)
Вот, кстати говоря - блур это конечно хорошо. А вот фильтр резкости был бы ещё лучше. В фотошопе можно резкость увеличить ( прямого фильтра нет, но с помощью несложных манипуляций), а во флеше нет. Хорошая была бы вещица...

Вам бы тему отдельную создать.
Вот фильтр:
Код:

<languageVersion : 1.0;>

kernel Sharpen
<  namespace : "Your Namespace";
    vendor : "i.o.";
    version : 1;
    description : "your description";
>
{
    input image4 src;
    output pixel4 dst;

    void evaluatePixel()
    {
        float2 outCr = outCoord();

       
        float4 matCore00 = sampleNearest(src, outCr - float2(-1.0, -1.0));
        float4 matCore01 = sampleNearest(src, outCr - float2( 0.0, -1.0));
        float4 matCore02 = sampleNearest(src, outCr - float2(+1.0, -1.0));
       
        float4 matCore10 = sampleNearest(src, outCr - float2(-1.0,  0.0));
        float4 matCore11 = sampleNearest(src, outCr - float2( 0.0,  0.0));
        float4 matCore12 = sampleNearest(src, outCr - float2(+1.0,  0.0));
       
        float4 matCore20 = sampleNearest(src, outCr - float2(-1.0, +1.0));
        float4 matCore21 = sampleNearest(src, outCr - float2( 0.0, +1.0));
        float4 matCore22 = sampleNearest(src, outCr - float2(+1.0, +1.0));
       
       
        dst =  -0.1*matCore00 - 0.1*matCore01 - 0.1*matCore02
              - 0.1*matCore10 + 1.8*matCore11 - 0.1*matCore12
              - 0.1*matCore20 - 0.1*matCore21 - 0.1*matCore22;
    }
}



Часовой пояс GMT +4, время: 16:44.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.