The ImagickKernel::getMatrix() function is an inbuilt function in PHP which is used to get the 2D matrix of values used in a kernel. The elements are either float or ‘false’ if element should be skipped.
Syntax:
array ImagickKernel::getMatrix( void )
Parameters:This function doesn’t accepts any parameter.
Return Value: This function returns an array value containing the matrix.
Below programs illustrate the ImagickKernel::getMatrix() function in PHP:
Program 1: This program uses getMatrix() function to get the matrix from user-defined matrix.
<?php // Create a new imagick object $imagick = new Imagick( $matrix = [ [-1, 0, 0], [4, -1, 6], [7, 8, 6] ]; // Create a kernel from matrix $kernel = ImagickKernel::fromMatrix( $matrix ); // Get the matrix $matrix = $kernel ->getMatrix(); print ( "<pre>" .print_r( $matrix , true). "</pre>" ); ?> |
Output:
Array ( [0] => Array ( [0] => -1 [1] => 0 [2] => 0 ) [1] => Array ( [0] => 4 [1] => -1 [2] => 6 ) [2] => Array ( [0] => 7 [1] => 8 [2] => 6 ) )
Program 2 (Get matrix from built-in matrix):
<?php // Create a new imagick object $imagick = new Imagick( // Create a kernel from built-in matrix $kernel = ImagickKernel::fromBuiltIn(Imagick::KERNEL_DISK, "2" ); // Get the matrix $matrix = $kernel ->getMatrix(); foreach ( $matrix as $row ) { foreach ( $row as $cell ) { if ( $cell === false) { $output .= 0; } else { $output .= $cell ; } } $output .= "<br>" ; } echo $output ; ?> |
Output:
00100 01110 11111 01110 00100
Reference: https://www.php.net/manual/en/imagickkernel.getmatrix.php