Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Objective-C

Войти
Регистрация
Восстановить пароль
 
ZenMasterBeat
0 / 0 / 0
Регистрация: 16.12.2014
Сообщений: 5
#1

Вырезание фона на фотографии с использованием GPUimage - Objective-C

16.12.2014, 11:09. Просмотров 686. Ответов 6
Метки нет (Все метки)

Добрый день. Подскажите пожалуйста как можно вырезать фон у фотографии в приложении? Предполагается что фон будет однородный.
Я думал использовать для этого GPUimage. И вообще можно ли сделать это с помощью этой библиотеке? Я находил в AppStore приложения с таким функционалом(вот например: https://itunes.apple...d335709058?mt=8), значит решение этой задачи уже найдено.

Если у кого-то есть опыт разработки подобных приложений, поделитесь пожалуйста!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.12.2014, 11:09
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вырезание фона на фотографии с использованием GPUimage (Objective-C):

Вырезание цвета фона элемента - HTML, CSS
Привет. При наведении на пункты меню на левой панели должны появляться треугольники цвета фона области основного контента (в данном...

Скрытый опрос по фотографии. Анонимный комментарий для фотографии - 1С Битрикс
Ребят такая проблема, не могу разобраться как сделать. задача такая есть детские фотографии пользователям нужно отгадать кто на ней...

Вырезание рисунка - C#
Как программно вырезать из картинки произвольную фигуру? например такую фигуру В прикрепленном файле рисунок

Вырезание строк из файлов - Visual Basic
Как можно из файла (напр *.txt или *.ini), содержащего n строчек вырезать k-ую строчку, при этом неперезаписывая файл Спасибо

Вырезание всех тегов - PHP
Здравствуйте! Есть простейший код регулярки: $page = 'url файла'; preg_match("|<body.*?>(.*)</body>|sei", $page, $arr); echo...

Вырезание букв с картинки - JavaScript
Здравствуйте. У меня есть некая проблема. Я не знаю как выполнить это действие при помощи JavaScript : 1. У меня есть капча ...

6
zulkis
682 / 609 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
16.12.2014, 11:31 #2
GPUImage не поддерживает то, что вы хотите из коробки(Ответ автора GPUImage)
Но если вы разберетесь с математикой, лежащей в основе того, что вы хотите - вы сможете сделать это используя эти GPUImage.
0
ZenMasterBeat
0 / 0 / 0
Регистрация: 16.12.2014
Сообщений: 5
16.12.2014, 12:19  [ТС] #3
Хорошо. Если есть идеи как это можно сделать, поделитесь пожалуйста!
0
zulkis
682 / 609 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
16.12.2014, 12:27 #4
А вам в каких целях? Сугубо ради интереса?
0
ZenMasterBeat
0 / 0 / 0
Регистрация: 16.12.2014
Сообщений: 5
16.12.2014, 12:35  [ТС] #5
Нет. Это рабочее задание. Нужно написать приложение вот с таким функционалом: https://itunes.apple.com/ru/app/styl...335709058?mt=8
вот еще видео с демонстрацией: http://www.stylebookapp.com/demos.html

Проблема в том что я работаю ios разработчиком 2 недели.)) И это первое боевое задание(до этого делал тестовое).
Поэтому буду очень благодарен за подробные ответы.
0
glvrzzz
95 / 71 / 12
Регистрация: 12.12.2012
Сообщений: 214
17.12.2014, 07:12 #6
В теории я бы сделал как-то так:
1. ищем примерный цвет фона либо как преобладающий цвет на картинке, либо как цвет по краям картинки, либо как-то еще.
2. выпиливаем этот цвет с исходной картинки с определенным допуском (считать думаю лучше все в HSB)

Если говорить о GPUImage и обработке в реальном времени и если у вас на светлом фоне более темные предметы, то можно попробовать фильтры threshold - после применения получаем картинку, где белое - фон, темное - предмет, инвертируем ее и домножаем на нее альфу исходной картинки. Может получиться не очень, но попробовать наверно стоит.
0
ZenMasterBeat
0 / 0 / 0
Регистрация: 16.12.2014
Сообщений: 5
17.12.2014, 16:23  [ТС] #7
Хорошо. 1 пункт выполнен. Нашел цвет фона.
Теперь чтоб убрать этот цвет с картинки нужно создать маску, как я понимаю?
Для этого я нашел метод
Objective-C
1
CGImageCreateWithMaskingColors
.

Но он возвращает nil.
Objective-C
1
2
const CGFloat colorMasking[6] = {124, 255,  68, 222, 0, 165};
   CGImageRef imageRef = CGImageCreateWithMaskingColors(myImage.CGImage, colorMasking);
Если imageRef вывести в консоль, будет nil.

Я в правильном направлении иду подскажите пожалуйста?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.12.2014, 16:23
Привет! Вот еще темы с ответами:

Вырезание цветового дополнения - Matlab
Имеется некое RGB изображение. Теперь задача: нужно вырезать определенный диапазон цветов на изображении для выделения некоторых объектов...

Вырезание окружностей из треугольника - Delphi
Недавно столкнулся с точно таким же заданием. Текст задания: "Какова должна быть длина стороны правильного треугольника а, чтоб из него...

Редактирование речи (вырезание пауз) - Софт
Существуют ли программы специально предназначенные для редактирования речи? Скажем, для вырезания эканья/меканья, неоправданных пауз и т.п....

.NET 4.x Вырезание кусков текста из строки - Visual Basic .NET
Есть файл .vbs с примерно таким содержимым: ------какой-то текст------- oEditor.CreateBox Array("NAME:BoxParameters",...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Yandex
Объявления
17.12.2014, 16:23
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru