2017-01-25 6 views
0

Может использоваться deep learning classification как точно и один из его особенностей. Например, чтобы идентифицировать бутылку (например, Grants Whiskey) и уровень жидкости в бутылке (с шагом 10 процентов - как и на 50%). Это проблема, которая может быть решена наилучшим образом с использованием некоторых из deep learning frameworks(Tensorflow и т. Д.) или какой-либо другой подход более эффективен?Если для классификации деталей, таких как уровень жидкости в бутылке, следует использовать классификацию глубокого обучения.

+1

Вы должны спросить «ДОЛЖНА глубоко изучения классификации можно использовать для ...». В настоящее время кажется, что каждая проблема CV должна решаться с помощью глубокого обучения, люди забывают, что они не должны переполнять проблемы. –

+0

Я согласен с Педро - поэтому я спросил, следует ли использовать глубокое обучение или какой-либо другой подход в теле вопроса. Я также попытаюсь изменить название вопроса сейчас. – vladimirp

+0

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

ответ

1

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

Для цветного ликера я тренировал два детектора. Один для обнаружения бутылки, а второй для обнаружения жидкости, указанной в бутылке. Соотношение между двумя будет вашим процентом.

Некоторые из проверенных внедренный глубоких детекторов обучения на основе объекта (только Google их):

  • Multibox
  • YOLO
  • Быстрее RCNN

Или на основе не-глубокого обучения:

  • Деформируемая часть модель

EDIT:

я прошу разработать более. Вот пример:

Датчик коробки, например. рисует коробку на изображении в [0,1, 0,2, 0,5, 0,6] (min_height, min_width, max_height, max_width), что является относительным расположением вашей бутылки.

Теперь вы уронили бутылку с исходного изображения и подали ее на второй детектор. Второй детектор рисует, например, [0,2, 0,3, 0,7, 0,8] в изображении обрезанной бутылки, местоположение указывает обнаруженную жидкость. Теперь (0,7-0,2) * (0,8-0,3) = 0,25 - относительная площадь жидкости по отношению к площади бутылки, о которой просит ОП.

EDIT 2:

Я вошел в этот ответ предполагая ОП хочет использовать глубокие знания. Я бы согласился, что другие методы следует учитывать, если OP все еще не уверен в глубоком обучении. Для обнаружения бутылок методы, основанные на глубоком обучении, показали большой превзойти традиционные методы. Обнаружение бутылки является одним из классов в задаче PASCAL VOC. См. Сравнение результатов здесь: http://rodrigob.github.io/are_we_there_yet/build/detection_datasets_results.html#50617363616c20564f43203230313020636f6d7034

Для обнаружения жидкости, однако, глубокое обучение может быть немного переборщиком. Например. если вы знаете, какой цвет вы ищете, даже простой цветовой фильтр даст вам «что-то» ....

+0

'Соотношение между двумя будет ваш процент', как вы можете определить процентное соотношение ликера в бутылке? можете ли вы подробнее рассказать? – mwweb

+0

Добавлен пример. Надеюсь, поможет. – guinny

1

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

Однако у вас вряд ли будут необходимые данные для такой задачи, поэтому я задал себе вопрос, могу ли я упростить эту проблему. Например, вы можете взять джин, водку и так далее и использовать SIFT, чтобы снова найти бутылку в новой сцене. Затем RANSAC для обнаружения бутылки и вырезать бутылку из изображения.

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

0

Идентификация этикетки бутылки не должно быть трудно сделать, - это даже доступен «на кране» для дешевых (these guys на самом деле использовать его для идентификации вина бутылки этикетки на их сайте): https://aws.amazon.com/blogs/aws/amazon-rekognition-image-detection-and-recognition-powered-by-deep-learning/

относительно уровня жидкости, это может быть проблемой, которую AWS не сможет решить сразу, но я уверен, что для нее можно создать собственный CNN. Кроме того, вы можете использовать добрые старые люди на Amazon Mechanical Turk, чтобы сделать для вас работу.

(Примечание: Я не работаю на Amazon)