borges
+1
Да, конечно, у нас есть и структура данных выше уровнем для ускорения поиска. Но это не словарь, в ней так же допускается нечеткое совпадение. Да, сначала находятся претенденты, а потом они проверяются. Претендентов не десяток-другой, а тысячи (зависит от предметной области, размеров базы и т. д.)

Если же использовать поиск по словарю, то слишком часто среди претендентов не будет находиться правильный ответ. В нашей предметной области false negative rate увеличивается в 2-2.5 раза.
borges
+1
Мы как раз эпизоды и ищем. То есть, какие-то cock-party находим (где довольно характерные эпизоды), какие-то пропускаем.
borges
+3
Честно говоря, сколько качали с видеохостингов порно, ни разу еще не попалось черно-белое.
borges
+1
Я не знаю. Для скачивания писали скрипт, и «тщательнейшим образом» не пересматривали потом.
borges
+2
> 3) Наивысший приоритет я бы отдал поиску изображения гениталий. Такие изображения обладают рядом особых признаков, а реализовать алгоритм поиска не сложнее, чем алгоритм поиска лица.
> а) вы пишете, что гениталии легко с чем-то спутать — возможно, но все зависит от количества признаков, заложенных в алгоритм распознавания;
> б) лицо также можно много с чем спутать, но тем не менее, качественные алгоритмы поиска лиц существуют;

Нет, все совсем не так. Лицо очень хорошо детектится, есть много алгоритмов, мы и сами писали свою реализацию, пока правда не пригодилось. Так вот, лицо (если картинку размыть, убрав шум) у всех одинаковое — темные глаза, светлый лоб и нос. Гениталии же детектить на видео довольно тяжело, особенно если качество видео плохое, мы пробовали.

Опять же, не надо путать поиск в видео и на фото — все сильно различается.
borges
+7
Пативэн уже выехал.
borges
+3
Опечатка, так сказать, по Фрейду. Исправил.
borges
+1
Сейчас совместно. Так получается лучше точность классификации. Но над порогами мы тоже думали, но еще не реализовывали.
borges
0
Пока стояла задача классифицировать именно видео. В реальной работе конечно к этому нужно добавлять и текстовый поиск.
borges
+1
Во-первых, поэтому мы и не используем в классификации только поиск по цвету. Во-вторых, я думаю, роликов типа «Я и мои дети на пляже в Турции» не будет больше 0.1% на видеохостингах.
borges
+3
Да, у нас в лицензеро есть такая функциональность — поиск логотипа в ролике. Думаю, прокручивание этой функциональности к поиску порнографии будет одной из следующих задач.
borges
+11
Мне тут подсказывают знатоки, что там половые органы не синие, задетектим.
borges
+6
Хентай ловится. Но здесь обратная проблема — иногда неправильно классифицируется как порно и некоторое другое аниме. Например, сцены, где крупным планом показывается ритмично дрожащее лицо главного героя. И это лицо
borges
+2
Про это еще будет статья (ну, не совсем про это). Но в двух словах, это не такая простая задача, как может показаться. Например, член трудно отличить от, скажем, руки или пальца.
borges
+1
Ага. Но к счастью, такой порнографии немного.
borges
+4
Да что же всем дались эти негритянки? ;)
— Негритянки, конечно детектятся немного хуже,
— это «немного» не настолько большое, чтобы сильно влиять на точность итоговой классификации ролика,
— кроме того, видео с негритянками на видеохостингах встречается не так часто (ну это субъективно, точных исследований мы не проводили), то есть, даже если бы они детектились еще хуже, это не так сильно влияло бы статистику классификации некоторой средней выборки роликов.
borges
+21
Вы это про синие и красные столбики?

А вообще да, мы решили выкладывать по пятницам, чтобы народ отвлекался от грустных мыслей о дедлайнах и завалах на работе.
borges
+5
Я походил по ссылкам, посмотрел. Все-таки детектить кожу на фото и видео — разные вещи. В видео часто не очень хорошее освещение, неправильная цветовая температура, всякие артефакты от пережатости кодеками.

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

На ОpenCV мы смотрели в процессе работы постоянно, на ни в одном нашем детекторе так и не использовали. Потому что нам важен доступ к коду на самом низком уровне, а не просто использование API. А ковырять такой космический корабль, как OpenCV не очень хочется.
borges
+3
Ну, зависит от того, насколько чернокожие.
borges
+4
Кстати да. До этого я писал о роликах, которые неправильно определяются как видео, а вот в обратную сторону — среди ненайденного порно лидирует как раз bdsm.
borges
0
Кстати да. До этого я писал о роликах, которые неправильно определяются как видео, а вот в обратную сторону — среди ненайденного порно лидирует как раз bdsm.
borges
0
Не для отдельного ролика, а для целых роликов. Мы тестируем на 3500 роликах. 1500 — специальные порноролики, 2000 — случайные пользовательские ролики.
По времени работы я пока не писал, потому что мы используем и CPU и GPU (CUDA), в дальнейшем GPU будем больше использовать. А сейчас пока 1 минута видео обрабатывается приблизительно за 30 секунд (на одном ядре CPU).
borges
0
Да-да. Поэтому и не стали в пятницу публиковать, чтобы не мешать с первоапрельскими постами.
borges
0
Точных замеров мы еще не делали, поскольку еще есть идеи по улучшению правильности классификации (то есть, пока приоритет у нас — минимизация ошибки). Но приблизительно — полминуты работы одного ядра процессора на минуту видео (правда, сюда же включено время декодирования видео ffmpeg-ом).
borges
+2
Видео пропускается через фильтры вот такого вида:
spatio-temporal filter
После чего мы получаем количественные показатели движения по разным направлениям. Эта картинка приблизительная, точнее я не нашел, а вообще детектор движения делал spsp. Он лично общался с теми людьми, которые разрабатывают это направление, он и писал код детектора. Если интересно, напишите ему, он обязательно ответит.
borges
+4
Ага, думали над тем чтобы классифицировать порно. Но, конечно, дальше шуточек дело не пошло.
borges
+1
Да, справляется. Главное чтобы движения были ритмичными. А названий фильмов, к сожалению, не знаю. У нас для тренировки использовались в основном небольшие ролики с видеохостингов.
borges
+1
Так здесь же примеры. Первый ролик — пример работы детектора, остальные — примеры неправильного отнесения роликов к классу порно.
borges
+11
Конечно мы так и делаем. Про звук статья еще будет. Мы просто решили писать про каждый детектор в отдельности, потому что они сильно разные, различное время было потрачено на разработку, различные технологии применялись.
borges
0
Да, это конечно видели. Не знаю, как сейчас у них обстоят дела, но когда только это нашли, не смогли нормально протестировать точность классификации. К тому же, работала эта штука очень долго.
borges
+4
Ага, точно. Бывают и такие. когда говорит и ритмично головой кивает.
borges
0
Чтобы оценить точность работы, мы тестируем на выборке, в которой мы уже руками отделили порно от непорно. А когда система работает, все зависит от пожеланий заказчика. В общем случае, мы говорим (автоматически), где порно, а где нет, при этом ролики сортируются по «порнографичности» (для удобства модерации, если она есть). Можем так же вырезать самый «порнушный» фрагмент ролика.
borges
+5
Руководством нашей компании.
borges
+43
Вообще, негритянки, Шарапова — это все не то. Классификатор чаще ошибается на роликах, где гитаристы крупным планом играют руками на своих желтых гитарах, или бабушка (опять же крупным планом) руками вяжет свитер, или трудолюбивый слесарь обрабатывает деталь драчёвым напильником.
borges
+39
Я буду отвечать на этот вопрос только в присутствии своего адвоката. Но нет, не с порнолаба.
borges
+5
Сейчас 30 сек. Но еще есть куда оптимизировать. Например, Bag of Visual Words считаем на GPU (CUDA), остальные пока нет.
borges
+2
Пробовали разные, по по нашим тестам получилось, что лучше YUV.
borges
0
Со статистикой не так все однозначно. Напишем в других статьях. В двух словах, мы классифицируем отдельные фрагменты, но для заказчиков интересна классификация целых роликов (что правильно). Например, один видеохостинг тестировал нашу систему. Они прислали 30 тыс. роликов. На целых роликах balanced accuracy получилась 0.87
borges
0
«Фрагменты» не всегда видны видны в кадре, к тому же просто распознать «фрагмент», то есть скажем, не спутать его с рукой тоже непростая задача. Частично она решается благодаря Bag of Visual Words.