Difference between revisions of "Function:Invert"

From CUVI Wiki
(Created page with "__NOTOC__ Computes matrix inverse of a square image. ===Function=== {| |style="font-size:150%;"| <syntaxhighlight lang="cpp"> CuviStatus invert(const CuviImage& src, ...")
 
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
__NOTOC__
__NOTOC__
Computes matrix inverse of a square image.
Computes matrix inverse of a square image using LU factorization.
===Function===
====Function====
{|
{|
|style="font-size:150%;"|
|style="font-size:100%;"|
<syntaxhighlight lang="cpp">
<syntaxhighlight lang="cpp">
CuviStatus invert(const CuviImage& src,
CuviStatus invert(const CuviImage& src,
Line 10: Line 10:
</syntaxhighlight>
</syntaxhighlight>
|}
|}
===Parameters===


====Parameters====
{|
|style="font-size:75%;"|
{|class="wikitable"
{|class="wikitable"
|-
|-
Line 30: Line 32:
| const CuviStream&
| const CuviStream&
| GPU stream ID for execution
| GPU stream ID for execution
 
|}
|}
|}


===Image Type Support===
====Image Type Support====
 
{|
|style="font-size:75%;"|
{| class="wikitable"
{| class="wikitable"
|-
|-
Line 42: Line 45:
| 32fC1
| 32fC1
| 32fC1
| 32fC1
|}
|}
|}


 
====Example====
===Example===
{|
{|
|style="font-size:150%;"|
|style="font-size:100%;"|
<syntaxhighlight lang="cpp">
<syntaxhighlight lang="cpp">




//Creating GPU images
//Initialize GPU image
CuviImage gimg = cuvi:io::loadImage(path), gout;
CuviImage input(3,3,CUVI_32FC1), output;


gimg.convertTo(gimg, CUVI_32FC1);
//Fill input image with random values
cuvi::dataExchange::generateRandomImage(input);


//Calculate the inverse
//Calculate the inverse
cuvi::arithmeticLogical::invert(gimg,gout);
cuvi::arithmeticLogical::invert(input, output);


</syntaxhighlight>
</syntaxhighlight>
|}
|}

Latest revision as of 20:16, 18 October 2022

Computes matrix inverse of a square image using LU factorization.

Function

CuviStatus invert(const CuviImage& src,
                  CuviImage& dst,
                  const CuviStream& stream = CuviStream());

Parameters

Name Type Description
src const CuviImage& Input Image
dst CuviImage& Destination Image
stream const CuviStream& GPU stream ID for execution

Image Type Support

Input Output
32fC1 32fC1

Example

//Initialize GPU image
CuviImage input(3,3,CUVI_32FC1), output;

//Fill input image with random values
cuvi::dataExchange::generateRandomImage(input);

	
//Calculate the inverse
cuvi::arithmeticLogical::invert(input, output);