Как программно добавить мягкий фокус на изображение - PullRequest
3 голосов
/ 25 января 2012

Мне было интересно, как добавить мягкий фокус (чтобы немного размыть изображение) Как path.com делает на этой странице https://path.com/p/35p8q5 (фоновое изображение). Я не знаю, возможно ли это без использования фотошопа.

Ответы [ 6 ]

4 голосов
/ 25 января 2012

Библиотека перехода (для PHP, Python ...): ImageMagick .Помимо прочего, это позволяет размытие .

Адаптация основного примера использования:

<?php
header('Content-type: image/jpeg');

$image = new Imagick('image.jpg');
$image->blurImage(5, 3);
echo $image;
?>
0 голосов
/ 25 января 2012

Вы можете сделать это в Python с помощью PIL . На изображениях есть метод filter, которому вы можете передать ImageFilter.BLUR. Вам нужно будет сделать это несколько раз, чтобы получить степень размытия, показанную в вашем образце.

def blur_multiple(im, amount=1):
    result = im
    for i in range(amount):
        result = result.filter(ImageFilter.BLUR)
    return result
0 голосов
/ 25 января 2012

Я заметил, что вы включили Python, поэтому я бы посоветовал изучить pil .Я использовал его немного, но, похоже, есть модуль , который может размыть изображения.

0 голосов
/ 25 января 2012

Простой способ сделать это - взять каждый пиксель в изображении, сложить окружающие его пиксели и получить среднее значение RGB для окружающих пикселей. Затем установите пиксель на это среднее значение. Сделайте это для каждого пикселя

0 голосов
/ 25 января 2012

Если вы посмотрите на изображение, которое является фоном этой страницы, вы увидите, что само изображение размыто.

Сверху наложен элемент «диммер» с черным фоном с непрозрачностью 25%, но это не размывает и не искажает изображение.

Вероятно, возможно сделать то, что вы просите, с помощью GD Library , хотя я считаю, что это не совсем то, что вы хотите сделать.

0 голосов
/ 25 января 2012
...