LonghornPHP 2026

ImagickKernel::addUnityKernel

(PECL imagick >= 3.3.0)

ImagickKernel::addUnityKernelДобавляет ядро Unity в список ядер

Описание

public function ImagickKernel::addUnityKernel(float $scale): void

Добавляет указанное количество свёрточного ядра 'Unity' к указанному предварительно масштабированному и нормализованному ядру. Это фактически добавляет то количество исходного изображения в получающееся ядро свёртки. В результате получается преобразование определённых ядер в смешанные мягкие пятна, нерезкие ядра или в заострённые ядра.

Список параметров

Сигнатура функции не содержит параметров.

Возвращаемые значения

Примеры

Пример #1 Пример использования ImagickKernel::addUnityKernel()

<?php
 function renderKernelTable($matrix) {
 $output = "<table class='infoTable'>";
 foreach ($matrix as $row) {
 $output .= "<tr>";
 foreach ($row as $cell) {
 $output .= "<td style='text-align:left'>";
 if ($cell === false) {
 $output .= "false";
 }
 else {
 $output .= round($cell, 3);
 }
 $output .= "</td>";
 }
 $output .= "</tr>";
 }
 $output .= "</table>";
 return $output;
 }
 $matrix = [
 [-1, 0, -1],
 [ 0, 4, 0],
 [-1, 0, -1],
 ];
 $kernel = \ImagickKernel::fromMatrix($matrix);
 $kernel->scale(1, \Imagick::NORMALIZE_KERNEL_VALUE);
 $output = "Перед добавлением unity ядра: <br/>";
 $output .= renderKernelTable($kernel->getMatrix());
 $kernel->addUnityKernel(0.5);
 $output .= "После добавления unity ядра: <br/>";
 $output .= renderKernelTable($kernel->getMatrix());
 $kernel->scale(1, \Imagick::NORMALIZE_KERNEL_VALUE);
 $output .= "После перенормировки ядра: <br/>";
 $output .= renderKernelTable($kernel->getMatrix());
 echo $output;
?>

Пример #2 Пример использования ImagickKernel::addUnityKernel()

<?php
function addUnityKernel($imagePath) {
 $matrix = [
 [-1, 0, -1],
 [ 0, 4, 0],
 [-1, 0, -1],
 ];
 $kernel = ImagickKernel::fromMatrix($matrix);
 $kernel->scale(4, \Imagick::NORMALIZE_KERNEL_VALUE);
 $kernel->addUnityKernel(0.5);
 $imagick = new \Imagick(realpath($imagePath));
 $imagick->filter($kernel);
 header("Content-Type: image/jpg");
 echo $imagick->getImageBlob();
}
?>

Нашли ошибку?

ИнструкцияИсправлениеСообщение об ошибке
+Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы

AltStyle によって変換されたページ (->オリジナル) /