我们的办公室小厨房里有一个专门针对咖啡机的网络摄像头。咖啡壶清晰可见。咖啡壶和照相机的位置都是静态的。是否可以使用图像识别来计算锅中咖啡的高度?我已经看到图像识别用于诸如面部识别之类的非常复杂的事物。与这些项目相比,这似乎是测量高度的琐碎任务。
(这是我的最佳猜测,我不知道潜在的复杂性。)
我将如何处理?这项工作会被认为是一项非常复杂的工作吗?仅供引用,我从未做过任何与影像相关的工作。
最佳答案
由于咖啡壶的位置是固定的,因此请获得一个样本框并在没有反射的位置定位一列像素,以便可以轻松看到最小和最大咖啡量。检查下图中的绿色垂直线段:
(来源:nullnetwork.net)
最简单的方法是制作两帧,一帧锅空的,一锅锅充满的(显然是在相同的光照条件下,通常是这种情况),转换为灰度(每个RGB像素colorsys.rgb_to_hsv
,只保留v
( 3rd)分量),然后将所选线段中所有像素的亮度求和。假设空 jar 情况下的总和为550,满 jar 情况下的总和为220(咖啡是深色的)。通过将输入帧的总和与这两个总和进行比较,您可以大致估算壶中咖啡的百分比。
不过,我不会为这种方法的准确性而下注,甚至从一秒钟到另一秒钟的波动都可能是疯狂的:)
N.B:在我的示例中,绿色的像素列应延伸到底池的底部;我只是提供了一个我的意思的例子。
关于python - 使用Python影像确定锅中咖啡的高度,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3227843/