|
<< Click to Display Table of Contents >> Navigation: GPU Processing > Theory of operation > Using the GPU Processing Tool > Available shaders |
The following overview lists shaders shipped with the CVB GPU Processing tool.
Beside these shaders you can develop your algorithms in HLSL.
Examples can be found in pMyShaders.fx located in the %CVB%\Tutorial\GPUprocessing\shaders directory.
Filename |
Functionname |
Min. shader version |
Variables used |
Remarks |
pShaderFilterCVBSN.fxENC |
HEdge3x3 |
2.0 |
fPixelShiftX, fPixelShiftY |
|
|
VEdge3x3 |
2.0 |
fPixelShiftX, fPixelShiftY |
|
|
Sobel3x3 |
2.0 |
fPixelShiftX, fPixelShiftY |
use D3DConfigureShaderFilter |
|
Sharpen3x3 |
2.0 |
fPixelShiftX, fPixelShiftY |
use D3DConfigureShaderFilter |
|
Laplace3x3 |
2.0 |
fPixelShiftX, fPixelShiftY |
use D3DConfigureShaderFilter |
|
Erode3x3 |
2.0 |
fPixelShiftX, fPixelShiftY |
use D3DConfigureShaderFilter |
|
Dilate3x3 |
2.0 |
fPixelShiftX, fPixelShiftY |
use D3DConfigureShaderFilter |
|
Canny2x2Pass1 |
2.0 |
fPixelShiftX, fPixelShiftY, fPixelSizeX, fPixelSizeY |
|
|
Canny2x2Pass2 |
2.0 |
fPixelShiftX, fPixelShiftY, fPixelSizeX, fPixelSizeY |
|
pShaderFilterPS3CVBSN.fxENC |
HEdge3x3_PS3 |
3.0 |
fPixelShiftX, fPixelShiftY |
|
|
VEdge3x3_PS3 |
3.0 |
fPixelShiftX, fPixelShiftY |
|
|
Sobel3x3_PS3 |
3.0 |
fPixelShiftX, fPixelShiftY |
use D3DConfigureShaderFilter |
|
Sharpen3x3_PS3 |
3.0 |
fPixelShiftX, fPixelShiftY |
use D3DConfigureShaderFilter |
|
Laplace3x3_PS3 |
3.0 |
fPixelShiftX, fPixelShiftY |
use D3DConfigureShaderFilter |
|
Erode3x3_PS3 |
3.0 |
fPixelShiftX, fPixelShiftY |
use D3DConfigureShaderFilter |
|
Dilate3x3_PS3 |
3.0 |
fPixelShiftX, fPixelShiftY |
use D3DConfigureShaderFilter |
|
LowPass3x3_PS3 |
3.0 |
fPixelShiftX, fPixelShiftY |
use D3DConfigureShaderFilter |
|
LowPass5x5_PS3 |
3.0 |
fPixelShiftX, fPixelShiftY |
use D3DConfigureShaderFilter |
|
LowPass7x7_PS3 |
3.0 |
fPixelShiftX, fPixelShiftY |
use D3DConfigureShaderFilter |
|
LowPass9x9_PS3 |
3.0 |
fPixelShiftX, fPixelShiftY |
use D3DConfigureShaderFilter |
|
LowPass11x11_PS3 |
3.0 |
fPixelShiftX, fPixelShiftY |
use D3DConfigureShaderFilter |
|
LowPass13x13_PS3 |
3.0 |
fPixelShiftX, fPixelShiftY |
use D3DConfigureShaderFilter |
|
LowPass15x15_PS3 |
3.0 |
fPixelShiftX, fPixelShiftY |
use D3DConfigureShaderFilter |
|
HiPass16Bit9x9_PS3 |
3.0 |
fPixelShiftX, fPixelShiftY |
use D3DConfigureShaderFilter, result is written to 16Bit output |
|
HiPass16BitTo8Bit9x9_PS3 |
3.0 |
fPixelShiftX, fPixelShiftY |
use D3DConfigureShaderFilter, result is scaled to 8Bit output |
|
Canny2x2Pass1_PS3 |
3.0 |
fPixelShiftX, fPixelShiftY |
|
|
Canny2x2Pass2_PS3 |
3.0 |
fPixelShiftX, fPixelShiftY |
|
pShader2ImagesCVBSN.fxENC |
Subtract |
2.0 |
fPixelShiftX, fPixelShiftY |
requires second texture (D3DSetTextureIndex) |
|
SubtractAbs |
2.0 |
fPixelShiftX, fPixelShiftY |
requires second texture (D3DSetTextureIndex) |
|
Add |
2.0 |
fPixelShiftX, fPixelShiftY |
requires second texture (D3DSetTextureIndex) |
|
Max |
2.0 |
fPixelShiftX, fPixelShiftY |
requires second texture (D3DSetTextureIndex) |
|
Min |
2.0 |
fPixelShiftX, fPixelShiftY |
requires second texture (D3DSetTextureIndex) |
|
Average |
2.0 |
fPixelShiftX, fPixelShiftY |
requires second texture (D3DSetTextureIndex) |
|
SlidingAverage |
2.0 |
fPixelShiftX, fPixelShiftY, fSlidingAverage |
requires second texture (D3DSetTextureIndex) |
pColorConversionCVBSN.fxENC |
RGBtoYUV |
2.0 |
fPixelShiftX, fPixelShiftY |
|
|
YUVtoRGB |
2.0 |
fPixelShiftX, fPixelShiftY |
|
|
RGBtoHSV |
2.0 |
fPixelShiftX, fPixelShiftY |
|
|
RGBtoHSI |
2.0 |
fPixelShiftX, fPixelShiftY |
|
pShaderBayerToRGBCVBSN.fxENC |
BayerToRGB_GBGB_3x3 |
2.0 |
fImageWidth, fImageHeight |
|
|
BayerToBGR_GBGB_3x3 |
2.0 |
fImageWidth, fImageHeight |
|
|
BayerToRGB_RGGB_3x3 |
2.0 |
fImageWidth, fImageHeight |
|
|
BayerToBGR_RGGB_3x3 |
2.0 |
fImageWidth, fImageHeight |
|
pShaderBayerToRGBwbCVBSN.fxENC |
BayerToRGB_GBGB_3x3 |
2.0 |
fImageWidth, fImageHeight, fGainR, fGainG, fGainB |
Same as the function in pShaderBayerToRGBwbCVBSN.fxENC but using an additional white balancing. |
|
BayerToBGR_GBGB_3x3 |
2.0 |
fImageWidth, fImageHeight, fGainR, fGainG, fGainB |
Same as the function in pShaderBayerToRGBwbCVBSN.fxENC but using an additional white balancing. |
|
BayerToRGB_RGGB_3x3 |
2.0 |
fImageWidth, fImageHeight, fGainR, fGainG, fGainB |
Same as the function in pShaderBayerToRGBwbCVBSN.fxENC but using an additional white balancing. |
|
BayerToBGR_RGGB_3x3 |
2.0 |
fImageWidth, fImageHeight, fGainR, fGainG, fGainB |
Same as the function in pShaderBayerToRGBwbCVBSN.fxENC but using an additional white balancing. |
pShaderGeoCVBSN.fxENC |
MagnifyingGlassInteraction |
2.0 |
fPixelShiftX, fPixelShiftY, CenterX, CenterY, Radius |
Acts as a magnifying glass that magifies a circle of the given radius centered at CenterX, CenterY |
|
Warping |
2.0 |
fPixelShiftX, fPixelShiftY, a1, b1, c1, d1, e1, f1, a2, b2, c2, d2, e2, f2 |
Warps the image using independed transformations for x and y according to the following formulars: Tx(x,y) = A*x^2 + B*x + C*x*y + D * y^2 + F Ty(x,y) = A*x^2 + B*x + C*x*y + D * y^2 + F |
|
TSAI |
2.0 |
fPixelShiftX, fPixelShiftY, fCenterX, fCenterY, k |
Corrects lense distortion using the TSAI camera calibration model according to: r' = r * (1 + k * r^2) r is the distance between the pixel x,y and the center. The angle between the pixel and the center is left unchanged. |