Anaglypher

Also available in English: http://shura.luberetsky.ru/plaginy-dlya-avisynth/anaglypher-plugin-for-avisynth/

Anaglypher – это плагин для AviSynth, преобразующий стереопары в анаглифическое изображение. Он вычисляет цветовые компоненты результирующего изображения по следующему правилу:

anaglypher

В этой формуле (R, G, B) – это вектор цветовых компонент результирующего изображения, (Rl, Gl, Bl) и (Rr, Gr, Br) – цветовые компоненты соответственно левого и правого изображений, Li,j и Ri,j – матрицы преобразования цветов.

Несмотря на сложную запись преобразований, использовать плагин достаточно легко. Плагин добавляет в AviSynth функцию

Anaglypher(clip Left, clip Right, \
	   float L11, float L12, float L13, \
	   float L21, float L22, float L23, \
	   float L31, float L32, float L33, \
	   float R11, float R12, float R13, \
	   float R21, float R22, float R23, \
	   float R31, float R32, float R33)

Left и Right – два клипа в формате RGB24 или RGB32, в которых находится соответственно левое и правое изображение стереопары. Ширина и высота кадра в обоих клипах должна быть одинаковой.

Для изготовления анаглифического изображения надо задать параметры функции, например, таким образом:

- монохромный анаглиф (red-cyan)

Anaglypher(Left, Right, \
	   0.299, 0.587, 0.114, \
	       0,     0,     0, \
	       0,     0,     0, \
	       0,     0,     0, \
	   0.299, 0.587, 0.114, \
	   0.299, 0.587, 0.114)

- цветной анаглиф (red-cyan)

Anaglypher(Left, Right, \
	       1,     0,     0, \
	       0,     0,     0, \
	       0,     0,     0, \
	       0,     0,     0, \
	       0,     1,     0, \
	       0,     0,     1)

- анаглиф Дюбуа (red-cyan)

Anaglypher(Left, Right, \
	    0.456,  0.500,  0.176, \
	   -0.040, -0.038, -0.016, \
	   -0.015, -0.021, -0.005, \
	   -0.043, -0.088, -0.002, \
	    0.378,  0.734, -0.018, \
	   -0.072, -0.013,  1.226)

Другие примеры применения плагина приведены в документации.

Пример получаемого видео (по методу Дюбуа):

http://shura.luberetsky.ru/anaglypher/Dubois.avi

Скачать плагин можно у меня:

http://shura.luberetsky.ru/anaglypher/Anaglypher.zip

Плагин устанавливается стандартным образом – копированием файла Anaglypher.dll в папку Plugins в директории AviSynth.

8 комментариев

  1. [info]slider_72 пишет:

    Хороший плагин.
    Хотел узнать, а возможно ли создание плагина для avisynth, но с обратным эффектом – раскладывающее анаглиф изображение на стереопары? (Про полную потерю цвета или же возможность сохранения цвета лишь в одном “канале” – вкурсе).
    Пока подобное встречал в виде отдельного софта: StereoMovie Maker, но не нравится то что размер кадра максимальный 640×480 и возможность сохранения только в avi формат. :(

  2. alex пишет:

    Нашел ошибку в работе плагина!
    При использовании отрицательных коэффициентов если результат оказывается меньше нуля, происходит инверсия цветов в каналах. Например, исходный цвет RGB (255,255,15) вычитается (0,0,20) в результате получим (0,255,250), а хотелось бы получить (255,255,0)

  3. alex пишет:

    И все таки, ошибка с переполнением разрядности есть! Могу прислать тестовый файлик (скрипт ависинта + две картинки jpg) на котором видно ошибку, только не знаю куда прислать, может напишете мне в личку? Плагин ваш очень хороший, аналогов не нашел, только вот эта ошибочка мешает использовать

  4. Рафаэль пишет:

    Спасибо за плагин, а можно и мне исправленную версию? спасибо заранее

  5. odnoshovinyakov пишет:

    “…если окажется, что на сайте старая версия плагина – то заменю”. Александр,очень прошу Вас выложить исправленную версию.,на шейдерах далеко не уехать:( Спасибо.

Ответить

Или воспользуйтесь входом по OpenID: