Я разрабатываю приложение для платформы Android, которое содержит более 1000 фильтров изображений, которые были «усовершенствованы».
Когда пользователь выбирает фотографию, я хочу сначала представить наиболее подходящие фильтры.
Эта «актуальность» должна зависеть от предыдущих вариантов использования.
Я уже разработал инструменты, которые регистрируют, когда сохраняется отфильтрованное изображение; эту комбинацию фильтра и изображения можно рассматривать как обучающие данные для моей системы.
Проблема в том, что сравнение должно происходить между выбором изображения и появлением следующего экрана. С точки зрения пользовательского интерфейса мне нужно, чтобы весь процесс занимал менее 4 секунд; выберите изображение -> получите показатель сходства -> проверьте варианты использования -> верните 6 ближайших совпадений. Я полагаю, что за 4 секунды я могу использовать анимацию и диалоги выполнения, чтобы пользователь был доволен.
Из-за ограничений платформы я довольно ограничен в вычислительных затратах алгоритма. Я реализовал технику, адаптированную из различных онлайн-руководств для запуска кода C на G1, и, следовательно, этот язык доступен.
Конкретные ограничения;
- Qualcomm® MSM7201A ™, процессор 528 МГц
- Растровое изображение 320 x 480 пикселей в 32-битном ARGB
- ~ 2 секунды вычислительное время для собственного метода для получения метрики
- ~ 2 секунды для сравнения метрики текущего изображения с данными обучения
Это академический проект, поэтому приветствуются все идеи, все, о чем вы можете подумать или о чем слышали, было бы мне интересно.
Мои идеи;
- Я хочу снизить сложность (O (n * m)?), Используя только пиксельные данные, а не функцию соседства
- Я искал использование историограммы цвета / гистограммы оттенков серого / текстуры / энтропии изображения, комбинируя их для измерения.
- Будет очевидна потеря информации, но мне нужно, чтобы результирующая метрика была существенно меньше, чем объем памяти, занимаемый изображением (~ 0,512 МБ).
Как я уже сказал, любые идеи по направлению моих исследований были бы фантастическими.
С уважением,
Гэвин