Photoshop: обрезать фотографию, чтобы она не содержала прозрачных пикселей?

47798
nickf

В Photoshop я собрал несколько панорамных фотографий с помощью инструмента Photomerge, и полученное изображение содержит много прозрачных пикселей. Кроме того, поскольку он собран из нескольких фотографий, выравнивание может быть отключено. То, что я хотел бы сделать, это обрезать изображение до самого большого поля, которое не содержит прозрачных пикселей вообще. Он похож на инструмент «Обрезка», но при этом удалит несколько непрозрачных пикселей. Есть что-нибудь подобное?

В основном это то, что автоматически обрезает изображение выше в поле выбора: прямоугольник без прозрачных пикселей.

28
Обычно вы можете сделать выделение всего на слое, и он пропустит пустые (прозрачные) пиксели. jweede 14 лет назад 0
да, но я хочу обрезать его до прямоугольника, который не содержит прозрачных пикселей. я буду редактировать, чтобы уточнить это. nickf 14 лет назад 0
Вы могли бы представить, что это простая функция, но Photoshop просто не может сделать это без сценария, и такой сценарий легко написать - потому что вы в основном ищете максимально возможный прямоугольник на изображении, основанный на текущем повороте. Я, наверное, сам напишу и поделюсь. Aero Windwalker 9 лет назад 0

9 ответов на вопрос

30
Caleb

Изображение> Обрезать, затем выберите На основе: прозрачные пиксели

Работал на меня, спасибо. Danyal Aytekin 12 лет назад 0
Это работает, только если область для обрезки является прямоугольной. Это не будет работать для произвольных форм, как в примере с OP. this.lau_ 9 лет назад 6
2
nemof

Есть несколько разных подходов к этому, но я не могу придумать, как сделать это автоматически.

Сначала создайте слой заливки ниже ярким цветом. Это показывает любые полупрозрачные пиксели, оставшиеся от слияния изображений.

Во-вторых, дублируйте верхний слой с вашим изображением. продолжайте дублировать исходный слой изображения, пока не исчезнет любой цвет из слоя заливки ниже. Это приводит к тому, что любые полупрозрачные пиксели становятся полностью непрозрачными, и не влияет на остальное изображение, как оно уже есть.

Наконец, объедините все эти слои и обрежьте до нужного размера. Вы можете подрезать в начале, если хотите, это не имеет значения.

Если заданная область пикселей не заполнена, а не обрезана, почему бы не клонировать ее с помощью инструмента клонирования?

2
Sam

На всякий случай фотошоп не предлагает вам никакого решения для этого:

Я использую Microsoft ICE или Autopano Pro для сшивания фотографий, и у них обоих есть очень простые в использовании функции кадрирования, чтобы добиться именно этого.

Может быть, вы должны попробовать использовать другой инструмент для сшивания - ICE бесплатно, возможно, стоит попробовать.

Я не нашел хорошего выбора для сшивания, кроме фотошопа. Это просто потрясающе ... Я открыл 2 документа с отсканированным изображением, установил несколько настроек в диалоговом окне и позволил ему работать, прекрасно соединив их вместе! RCIX 14 лет назад 0
2
Pete C

Using CS6, the following does exactly what is required for me:

  1. select crop tool
  2. select 'straighten'
  3. draw along a known straight line
  4. the rotation is performed immediately and a suggested crop appears cutting out all the transparent pixels resulting from the rotation.

result: beautiful!

Это работает только если изображение прямоугольное. Aero Windwalker 9 лет назад 0
1
user3802871

Создайте новый слой и «Правка» - заполните его черным.

Теперь, когда видимы оба слоя и выбран слой с изображением, используйте Волшебную палочку и, отметив «Образцы всех слоев» и «Смежный», выберите прозрачную область, которая теперь стала черной.

Хит удалить. Все смежные прозрачные пиксели должны быть удалены.

Я никогда не использовал Photoshop (и у меня его нет), поэтому я не могу сказать, что это будет делать. Что делает «удаление» пикселя? Будут ли удалены непрозрачные пиксели? (Вы понимаете, что ОП хочет *** обрезать *** изображение, верно?) И PS Нет ли риска, что черные пиксели, которые являются законной частью изображения, могут быть выброшены с водой из ванны? PPS Вы можете улучшить свой ответ с помощью иллюстраций; т.е. до и после изображения. PPPS Пожалуйста, не отвечайте в комментариях; [отредактируйте] ваш ответ, чтобы сделать его более понятным и полным. Scott 7 лет назад 0
0
Lazer

Что я могу думать о том, что:

а) Сценарии Photoshop [ 1 2 ]

б) Matlab [ 3 ]

Посмотри. Тем временем я поищу ссылки, которые лучше объясняют, как это можно сделать, или, возможно, напишу для этого код Matlab, а затем отредактирую этот пост.

0
Deverill

Если вы не можете найти автоматический инструмент и вынуждены в конечном итоге делать это вручную, этот урок покажет, как это сделать с помощью однострочного инструмента выделения, который намного проще обычного при попытке получить право на Топ.

0
Pixelmaster69

Вам нужно выбрать «Все», затем нажать вправо, а затем влево на клавиатуре, чтобы просто выделить непрозрачные пиксели, не перемещая их в конечном итоге, а затем нажать «Обрезать». Это ограничит только непрозрачные пиксели.

0
developer71240

Это можно сделать с помощью скрипта, подобного приведенному ниже:

  1. Загрузите скрипт здесь: https://developer71240.github.io/crop-to-opaque/
  2. Извлеките загруженный почтовый файл
  3. Открыв изображение в Photoshop, выберите « Файл» > « Открыть».
  4. Перейдите к извлеченным файлам сценариев, выберите crop-to-opaque.jsx и нажмите «Открыть».

Примечание: изображение будет обрезано в соответствии с текущим слоем, который должен иметь альфа-канал.

Похожие вопросы