Image 通过图像处理从仪表读取值

Image 通过图像处理从仪表读取值,image,python-2.7,image-processing,scikit-image,Image,Python 2.7,Image Processing,Scikit Image,我正试图从我拍摄的照片中读取一列中的液位,看看是否可以自动收集数据 到目前为止,我已经能够使用下面的一些代码来确定液位的大致位置 我现在需要弄清楚的是如何识别中断,然后如何将其转换为数据值,我可以将其缩放到列上的值 关于我将使用什么软件包或方法来实现这一点,有什么想法吗?任何例子都将不胜感激。你能通过给水上色、改变照明或在水后放置交叉阴影图案来让自己的生活更轻松吗…?给水上色可能不是一个选项,但照明、背光或在柱后放置图案都是潜在的选项。假设我得到的图像对比度更高,我仍然需要处理工具来识别上面

我正试图从我拍摄的照片中读取一列中的液位,看看是否可以自动收集数据

到目前为止,我已经能够使用下面的一些代码来确定液位的大致位置

我现在需要弄清楚的是如何识别中断,然后如何将其转换为数据值,我可以将其缩放到列上的值


关于我将使用什么软件包或方法来实现这一点,有什么想法吗?任何例子都将不胜感激。

你能通过给水上色、改变照明或在水后放置交叉阴影图案来让自己的生活更轻松吗…?给水上色可能不是一个选项,但照明、背光或在柱后放置图案都是潜在的选项。假设我得到的图像对比度更高,我仍然需要处理工具来识别上面的读数。谢谢。我首先要校正图像,使仪表完全垂直。然后,对列中的数组求和,以便处理一维信号。好了,你可以跳起来了。开始不好。首先你得到一个好的图像,然后你考虑如何处理它。你的图像质量很差。我相信你可以得到更好的材料。。。拉屎
import numpy as np
import matplotlib.pyplot as plt
import skimage
from skimage import data
from skimage.feature import canny
from scipy import misc
from skimage.filters import roberts, sobel, scharr, prewitt
%matplotlib inline

perm = skimage.io.imread('C:\Users\Spencer\Desktop\perm2_crop.jpg')
edge_roberts = roberts(perm[:, :, 2])

plt.imshow(edge_roberts, cmap=plt.cm.gray)