CUDA (Проект)/Описание алгоритма работы программы — различия между версиями
Материал из Wiki
ANA (обсуждение | вклад) |
ANA (обсуждение | вклад) м (→PPM формат) |
||
Строка 15: | Строка 15: | ||
{| align=center | {| align=center | ||
− | ! <html><img src="https://docs.google.com/drawings/d/ | + | ! <html><img src="https://docs.google.com/drawings/d/1KRwNUJ6sv5egW5_hhfW2z0A-YYy_FdFq0ke39YBa6zI/pub?w=500"></html> |
|- | |- | ||
− | ! Рисунок 1 ([https://docs.google.com/drawings/d/ | + | ! Рисунок 1 ([https://docs.google.com/drawings/d/1KRwNUJ6sv5egW5_hhfW2z0A-YYy_FdFq0ke39YBa6zI/edit Edit]) |
|} | |} | ||
− | * "image in top to bottom, left to right order." | + | * "image in top to bottom, left to right order." |
== Расчет координат == | == Расчет координат == |
Версия 11:01, 16 августа 2013
Проект CUDA
- Техническое задание
- DDS формат
- Алгоритм сшифки кадров
- Описание программы GLView
Литература
Содержание |
BMP формат
|
---|
Рисунок 1 (Edit) |
PPM формат
- описание формата PPM
|
---|
Рисунок 1 (Edit) |
- "image in top to bottom, left to right order."
Расчет координат
|
---|
Рисунок 2 (Edit) |
Горизонтальное сравнение
- Координаты левого верхнего угла для Tex1 при заданном смещении x и y:
- Tex1PixelX = width - xmargin + x
- Tex1PixelY = (y<yoffset) ? height : height - y ;
- Координаты левого верхнего угла для Tex2 при заданном смещении x и y:
- Tex2PixelX = 0
- Tex2PixelY = (y<yoffset) ? height - (yoffset - y) : 0 ;
- Ширина и высота поля перекрытия:
- xwidth = xmargin - x;
- yheight = (y<yoffset) ? height - yoffset + y : height - (y - yoffset) ;
pixel = xwidth * yheight ; for (div = 0; div < xwidth ; div++) { Tex1CoorXf = (Tex1PixelX + divx) / (float) width; Tex2CoorXf = (Tex2PixelX + divx) / (float) width; for (divy = 0; divy < yheight ; divy++) { Tex1CoorYf = (Tex1PixelY + divy) / (float) width; Tex2CoorYf = (Tex2PixelY + divy) / (float) width; Tex1Pixel = tex2D(tex1, Tex1CoorXf, Tex1CoorYf); Tex2Pixel = tex2D(tex2, Tex2CoorXf, Tex2CoorYf); ErrorSum += PixelSub(Tex1Pixel, Tex1Pixel); } } ErrorSum = ErrorSum/pixel; dM[x,y] = ErrorSum;
Вертикальное сравнение
- Координаты левого верхнего угла для Tex1 при заданном смещении x и y:
- Tex1PixelX = (x<xoffset) ? 0 : x ;
- Tex1PixelY = height - ymargin + y
- Координаты левого верхнего угла для Tex2 при заданном смещении x и y:
- Tex2PixelX = (x<xoffset) ? xoffset - x : 0 ;
- Tex2PixelY = 0
- Ширина и высота поля перекрытия:
- xwidth = (x<xoffset) ? width - xoffset + x : width - (x - xoffset) ;
- yheight = ymargin - y;