Как обрезать картинку на компьютере по контуру

Обновлено: 01.07.2024

Я работаю над изображениями глазного дна сетчатки. Изображение состоит из круглой сетчатки на черном фоне. С OpenCV мне удалось получить контур, который окружает всю круглую сетчатку. Мне нужно вырезать круглую сетчатку из черного фона.

Что вы подразумеваете под кадрированием? изображения всегда прямоугольные, поэтому вы можете либо создать маску, либо выполнить следующие операции (обработка/рендеринг) только с замаскированными пикселями. Или вы можете обрезать изображение так, чтобы оно представляло собой ограничивающую рамку сетчатки, которая может быть намного меньше исходного изображения, но все еще будет иметь некоторые черные части (поскольку сетчатка не прямоугольная). Или вы можете обрезать до максимальной прямоугольной области ВНУТРИ сетчатки, в которой не останется ни одного черного фонового пикселя, но также будут удалены части сетчатки. Какой из них вы хотите?

3 ответа 3

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

Предполагая, что вы запустили cv2.findContours на своем изображении, вы получите структуру, в которой перечислены все контуры, доступные на вашем изображении. Я также предполагаю, что вы знаете индекс контура, который использовался для окружения нужного вам объекта. Предполагая, что это хранится в idx , сначала используйте cv2.drawContours, чтобы нарисовать заполненную версию этого контура на пустом изображении, а затем используйте это изображение для индексации вашего изображения, чтобы извлечь объект. Эта логика маскирует любую нерелевантную информацию и сохраняет только то, что важно, то есть то, что определено в выбранном вами контуре. Код для этого будет выглядеть примерно так, если предположить, что ваше изображение представляет собой изображение в градациях серого, хранящееся в img :

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

Код обрезки работает таким образом, что когда мы определяем маску для выделения области, определенной контуром, мы дополнительно находим наименьшие горизонтальные и вертикальные координаты, которые определяют верхний левый угол контура. Аналогично находим наибольшую горизонтальную и вертикальную координаты, определяющие левый нижний угол контура. Затем мы используем индексацию с этими координатами, чтобы обрезать то, что нам действительно нужно. Обратите внимание, что при этом выполняется обрезка маскированного изображения, то есть изображения, которое удаляет все, кроме информации, содержащейся в самом большом контуре.

Следует отметить, что приведенный выше код предполагает, что вы используете OpenCV 2.4.x. Обратите внимание, что в OpenCV 3.x изменилось определение cv2.findContours. В частности, вывод представляет собой вывод кортежа из трех элементов, где первое изображение является исходным изображением, а два других параметра такие же, как в OpenCV 2.4.x. Поэтому просто измените оператор cv2.findContours в приведенном выше коде, чтобы игнорировать первый вывод:

Excel для Microsoft 365 Word для Microsoft 365 Outlook для Microsoft 365 PowerPoint для Microsoft 365 Excel для Microsoft 365 для Mac Word для Microsoft 365 для Mac PowerPoint для Microsoft 365 для Mac Word для Интернета PowerPoint для Интернета Excel 2021 Word 2021 Outlook 2021 PowerPoint 2021 Excel 2021 для Mac Word 2021 для Mac PowerPoint 2021 для Mac Excel 2019 Word 2019 Outlook 2019 PowerPoint 2019 Excel 2019 для Mac Word 2019 для Mac PowerPoint 2019 для Mac Excel 2016 Word 2016 Outlook 2016 PowerPoint 2016 Excel 2016 для Mac Word 2016 для Mac PowerPoint 2016 для Mac Excel 2013 Word 2013 Outlook 2013 Excel 2010 Word 2010 Outlook 2010 PowerPoint 2010 Excel для Mac 2011 Word для Mac 2011 PowerPoint для Mac 2011 Еще. Меньше

Если вы хотите изменить контур фотографии, придав ей форму (например, круг или прямоугольник со скругленными углами), используйте инструмент обрезки на ленте .

Вы можете обрезать фигуру в Word, PowerPoint, Outlook или Excel.

Обрезать изображение до формы, например круга

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

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

Ваш браузер не поддерживает видео. Установите Microsoft Silverlight, Adobe Flash Player или Internet Explorer 9

Используйте Вставка > Изображение, чтобы добавить изображение в файл Office (например, документ Word, презентацию PowerPoint или сообщение электронной почты Outlook).

Нажмите на картинку.

Вы можете обрезать несколько изображений одновременно, но вы должны обрезать их до одинаковой формы. (Но в Word это сложно, потому что вы не можете выбрать несколько рисунков, которые имеют параметр макета In Line with Text по умолчанию.)

Нажмите "Работа с рисунками" > "Формат" и в группе "Размер" нажмите стрелку под пунктом "Обрезать".

Кнопка обрезки находится на вкладке

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

Форма немедленно применяется к изображению.

Затем используйте команду "Обрезка" > "По размеру" или "Обрезка > Заливка", чтобы изменить размер изображения, вписывающегося в форму, которую вы применили:

Fill Заполняет всю фигуру изображением. Некоторые внешние края изображения могут быть обрезаны. На полях фигуры не должно быть пустого места.

По размеру Подгоняет все изображение под форму, сохраняя при этом исходное соотношение сторон изображения. На полях фигуры могут быть пустые места.

(Черные маркеры обрезки появляются по краям и углам изображения, когда вы выбираете параметр "По размеру" или "Заливка".)

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

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

Перетащите боковой маркер обрезки внутрь

Обрезать две смежные стороны одновременно

Перетащите маркер обрезки угла внутрь

Обрезать одинаково с двух параллельных сторон одновременно

Нажмите и удерживайте клавишу Ctrl, перетаскивая внутрь боковой маркер обрезки

По завершении нажмите кнопку "Обрезать" еще раз.

Начните с фигуры и добавьте к ней изображение

Вы можете добавить изображение в качестве заливки для фигуры, а затем отредактировать или обрезать фигуру.

Добавить изображение к фигуре

Добавьте фигуру в документ (инструкции см. в разделе Добавление фигур) и щелкните фигуру, чтобы выбрать ее.

Нажмите Инструменты рисования > Формат и в группе Стили фигур нажмите Заливка фигуры > Рисунок.

Добавление изображение как заливка фигуры

Выберите нужный тип изображения (например, "Из файла" или "Изображения из Интернета"), а затем перейдите к нужному изображению и вставьте его.

Изменить размер фигуры

Чтобы изменить размеры заполненной фигуры, сохранив ее основной формат, выберите ее и перетащите любой из маркеров изменения размера.

Выберите, как изображение вписывается в фигуру

Если ваше изображение перекошено, обрезано или не заполняет форму так, как вы хотите, используйте инструменты "Подгонка" и "Заливка" в меню "Обрезка" для точной настройки:

Нажмите на фигуру, созданную с помощью функции «Заливка фигуры» > «Изображение».

Нажмите Работа с рисунками > Формат и в группе Размер щелкните стрелку под Обрезка. Появится меню с параметрами обрезки.

Кнопка обрезки находится на вкладке

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

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

Нажмите "Заполнить" или "Вписать".

Fill задает размер изображения, соответствующий высоте или ширине фигуры, в зависимости от того, что больше. Это заполняет фигуру изображением, удаляя все, что находится за периметром фигуры.

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

Вы можете перетащить изображение, чтобы изменить часть, отображаемую внутри фигуры.

При желании отрегулируйте область обрезки с помощью маркеров обрезки, как описано в разделе «Обрезка изображения».

Когда закончите, нажмите клавишу ESC или щелкните в любом месте документа за пределами изображения.

Используйте точки редактирования для редактирования или обрезки фигуры

Хотя инструменты обрезки недоступны для фигур, вы можете использовать инструмент "Редактировать точки" для редактирования фигуры вручную.

Выберите фигуру, которую хотите изменить.

Нажмите "Инструменты рисования" > "Формат" и в группе "Вставить фигуры" нажмите кнопку "Редактировать фигуру", затем нажмите "Редактировать точки".

Перетаскивайте вершины фигуры (которые отображаются в виде черных точек по периметру фигуры), пока фигура не примет нужный вид.

Чтобы удалить точку вершины, удерживайте клавишу Ctrl и щелкните ее.Чтобы добавить точку вершины, удерживайте клавишу Ctrl и щелкните в любом месте периметра фигуры, где еще нет точки вершины.

См. также

Если вы хотите изменить контур фотографии, придав ей форму (например, круг или прямоугольник со скругленными углами), используйте инструмент обрезки на ленте .

Инструмент «Контур» позволяет скрыть часть слоя изображения, удалив ненужные линии разреза. Следуйте подробным инструкциям ниже, чтобы использовать функцию Контур.

Шаг 1. Сначала необходимо разгруппировать изображение, если оно состоит из нескольких слоев.

  • Windows/Mac: выберите изображение и нажмите "Разгруппировать" в верхней части панели "Слои".
  • iOS/Android: выберите изображение, а затем выберите «Разгруппировать» в меню «Действия».

Ungroup_Composite.jpg

Шаг 2. Выберите слой, для которого вы хотите скрыть линии разреза, а затем:

Hide_Contour_Tool_Composite.jpg

Шаг 3. Появится окно «Скрыть контур».

  • Windows/Mac. Линии на изображении представляют собой отдельные линии разреза. Нажмите на линию разреза, которую вы хотите скрыть на самом изображении, или выберите контур, который нужно скрыть, в меню в правой части окна. Скрытый контур станет более светлым, что означает, что он больше не будет отображаться как часть изображения и не будет обрезан. При желании повторите с другими линиями разреза.
  • iOS/Android: темно-серые линии на изображении обозначают отдельные линии разреза. Нажмите, чтобы скрыть линию разреза. Линия станет светло-серой, указывая на то, что она больше не будет отображаться как часть изображения и не будет обрезана. При желании повторите с другими линиями разреза.

Hide_Contour_window_Composite.jpg

Шаг 4. Когда вы закончите скрывать линии обрезки изображения, закройте окно «Скрыть контур» или щелкните за его пределами, чтобы закрыть его (в мобильном приложении снова коснитесь «Скрыть контур»). Скрытые контуры больше не отображаются как часть изображения.

Hide_Contour_Result_Composite.jpg

Совет: если вы хотите восстановить скрытый контур, повторите процесс и нажмите на скрытые линии разреза, чтобы восстановить их. Контур снова появится на холсте.

Примечание. Функция «Контур» недоступна в приложении Cricut Basics для iOS. Для расширенного редактирования используйте Design Space на устройстве iOS или Android, компьютере Mac или Windows.

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

Применение корректировок к видеоклипу

Применение фильтра к видеоклипу

К видео можно применить фильтр, чтобы сделать цвет холоднее или теплее или получить видео в черно-белое. Применив фильтр, можно настроить требуемый параметр фильтрации.

Обрезка видеоролика

Можно обрезать видеоклип так, чтобы он читал и приостановился в судебном заседании. Обрезка видеоклипа не приводит к фактическому удалению снятого материала; можно восстановить любой вырезанный материал.

Маркеры вырезают в видеоклипе.

Усечение или выпрямление видеоклипа

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

Также можно перетянуть колесо для поворота наклона видео. См. раздел Усечение и выпрямление фотографий.

Показан видеоклип с затягиванием маркерами для усечения клипа. ширина=

Изменение замедленного видео

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

Показан замедленный видеоклип с маркерами, которые можно перетянуть для изменения места замедления и взятия клипа.

Gimp может применять цвета, текстуры или градиенты к выбранным объектам». /><br /></p>
<p>Gimp предоставляет инструменты выделения «Прямоугольник», «Эллипс» и «Лассо», которые помогут вам вырезать определенные части фотографии или иллюстрации, чтобы сохранить, удалить или отредактировать. Кроме того, если вы добавите к изображению альфа-канал, вы можете удалить область вокруг выделения и заменить ее прозрачным фоном. Какой инструмент выделения использовать, зависит от формы объекта, который вы хотите выделить. Например, инструмент

Объекты неправильной формы

Выберите меню "Слой", "Прозрачность", а затем "Добавить альфа-канал". Альфа-канал добавляет к изображению прозрачный слой.

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

Нажмите опорную точку или первое место, на которое вы нажали с помощью инструмента "Лассо", чтобы замкнуть петлю вокруг объекта.

Нажмите меню "Выбрать", а затем "Инвертировать", чтобы выбрать все части изображения, кроме части, которую вы обвели с помощью лассо.

Нажмите "Ctrl-X", чтобы вырезать ненужные части изображения и отобразить выбранную часть поверх прозрачного фона.

Прямоугольные объекты

Нажмите в меню "Слой", выберите "Прозрачность", а затем "Добавить альфа-канал", чтобы добавить базовый прозрачный фон к изображению.

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

Нажмите и удерживайте левую кнопку мыши в левом верхнем углу объекта, а затем перетащите курсор вниз и вправо, пока прямоугольник выделения полностью не закроет его.

Отпустите кнопку мыши. Gimp поместит рамку, состоящую из движущихся штрихов, вокруг той части изображения, которую вы хотите выделить.

Нажмите «Ctrl-I», чтобы инвертировать выделение, а затем «Ctrl-X», чтобы удалить ненужную часть изображения. Выбранный объект появится поверх прозрачного фона.

Круглые, овальные или эллиптические объекты

Нажмите в меню "Слой", выберите "Прозрачность", а затем "Добавить альфа-канал", чтобы создать прозрачный фон для вашего изображения.

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

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

Отпустите кнопку мыши. Gimp окружит объект движущимися штрихами.

Нажмите и удерживайте левую кнопку мыши на одном из четырех квадратов, окружающих выбранный вами объект; перетащите квадрат влево, вправо, вверх или вниз, пока не получите наилучшее возможное соответствие, а затем отпустите кнопку мыши.

Нажмите "Ctrl-I", чтобы инвертировать выделение, а затем "Ctrl-X", чтобы удалить ненужную часть изображения.

Читайте также: