Я делаю проект обработки изображений, который имеет несколько шагов и застрял в одном из них. Вот что. Я сегментировал изображение и вычитал передний план из фона. Теперь мне нужно заполнить фон.Вытягивание непрозрачных областей в центр прозрачных областей на изображении
До сих пор я пробовал алгоритмы inpainting. Они не работают в моем случае, потому что мои фоновые изображения не имеют не менее 40% из них. Я имею в виду, что они терпят неудачу, когда они пытаются получить 40% изображения. (Кстати, эти изображения дали плохие результаты даже в Photoshop с инструментом для содержания.)
Во всяком случае, я отказался от попыток разобраться и решил что-то еще. В моем проекте мне не нужно заполнять 100% моего фона. Я хочу проиллюстрировать свое решение;
Как вы видите на изображении выше, я хочу, чтобы тянуть изображение в черной области (который является прозрачным) с минимальной коррупцией. Любые образцы кода MATLAB, техника, ключевое слово и подход были бы замечательными. Если вам нужны дополнительные объяснения, не стесняйтесь спрашивать.
bwdist может быть работой Shai, но roifill не дает приемлемых результатов. Ну, я буду иметь в виду. Знаете ли вы какой-либо фрагмент кода, который тянет/расширяет точку до другой точки изображения? –
Это довольно большое отверстие, заполняемое множеством краев, я очень сомневаюсь, что есть какой-либо способ получить приемлемый результат без специального корпуса для этого изображения. – Noremac
@Noremac Вы были правы. Это очень большой - почти 40% изображения. Предложения Шая не дали многообещающего результата. К сожалению, большинство случаев в этой форме. Инструмент заполнения содержимого Adobe Photoshop даже не прошел. Я изменил свою перспективу и создал решение. Я перемещаю пиксели в отверстие с динамической скоростью. Я имею в виду, что самые близкие пиксели к сдвигу отверстий меньше, другие меняются больше. Наконец, я применил специальный 8-соседний средний фильтр. Время обработки составляет почти 2 секунды, и этот подход дает многообещающие результаты на удивление с моим делом. –