Подтвердить что ты не робот

Определите высоту кофе в кастрюле с помощью изображения Python

Это немного забавный вопрос, но...

У нас есть веб-камера на нашей кухонной мини-кухне, ориентированная на нашу кофеварку. Кофейник хорошо виден. Место расположения кофейника и камеры являются статическими. Можно ли подсчитать высоту кофе в кастрюле, используя распознавание изображений? Я видел, как распознавание изображений используется для довольно сложных вещей, таких как распознавание лиц. По сравнению с этими проектами это кажется тривиальной задачей измерения высоты.

(Это мое лучшее предположение, и я не имею представления об основных сложностях.)

Как я могу это сделать? Будет ли это рассматриваться как очень сложная задача? FYI, я никогда не занимался какой-либо работой, связанной с изображениями.

Спасибо

4b9b3361

Ответ 1

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

http://imagepaste.nullnetwork.net/img/1278948944coffee_maker.jpg

Самый простой способ - иметь два кадра: один с банком пустым, один с банком полный (очевидно, при тех же условиях освещения, что обычно будет так), конвертировать в оттенки серого (colorsys.rgb_to_hsv каждый пиксель RGB и сохраняйте только компонент v (3rd)) и суммируйте яркость всех пикселей в выбранном сегменте линии. Скажем, в случае пустого банка суммарный объем 550 и банкнотный случай составляют 220 (кофе темный). Сравнивая сумму входных кадров с этими двумя суммами, вы можете получить приблизительную оценку процента кофе в банке.

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

N.B: в моем примере зеленый столбец пикселей должен распространяться на дно горшка; Я просто привел пример того, что я имел в виду.

Ответ 2

Шаги, которые я попробую:

  • Преобразовать изображение в grayscale.
  • Зарекомендовать изображение и оставить только кофе. Вы можете обнаружить хороший порог вручную с помощью экспериментов.
  • извлечение Blob. Область Blob (количество пикселей) является одним из способов вычисления высоты, то есть области/ширины.

Ответ 3

Сначала сделайте пороговое значение, затем сегментирование. Тогда вы можете легче обнаружить ребра.

Ответ 4

Вы ищете обнаружение границ. Но вам нужно только сделать это между коричневым/черным кофе и цветом фона за горшком.

Ответ 6

Вы должны включить этот вопрос в школьное задание для ИТ-студента. Большинство ИТ-школ учат Computer Vision. Задавать вопрос здесь смешно, получить студента и учителя, изучающего предмет, будет весело!

Ответ 7

  • сделайте фотографии банка с различными уровнями кофе в нем.
  • уменьшите изображение до 4 * 10 пикселей.
  • сделать то же самое в цикле для каждого нового живого изображения.
  • вычислить разность значений каждого пикселя по сравнению с эталонными изображениями.
  • возьмите контрольное изображение с наименьшей разницей, и вы получите состояние своего кофе-машины.

вы можете экспериментировать, если версия в оттенках серого или только красный или зеленый могут дать лучшие результаты.

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