Function:MatMulTrans

From CUVI Wiki
Jump to: navigation, search

Performs matrix multiplication with its transpose.

Function

CuviStatus matMulTrans(const CuviImage& A,
                       CuviImage& B,
                       bool trans = false,
                       const CuviStream& stream = CuviStream());

Parameters

Name Type Description
A CuviImage& Input Image
B CuviImage& Resultant Image
stream CuviStream& GPU stream ID for execution

Image Type Support

Input Output
32f single channel 32f single channel


Example

CuviSize aSize(3,3);
 
//Initialize input image
CuviImage A(aSize, CUVI_32FC1);
 
//Fill image with random values
cuvi::dataExchange::generateRandomImage(A);
 
CuviImage B;
 
//Perform matrix multiplication (A * A')
cuvi::arithmeticLogical::matMulTrans(A,B);
 
//The order of multiplication can be reversed to (A' * A)
cuvi::arithmeticLogical::matMulTrans(A,B,true);