我试图在EKG上重新创建轨迹,然后将它们覆盖到一个新的网格上,但我被如何最好地跟踪实际轨迹所困。在接下来的图片中,有6个不同的轨迹,我想在一个带有网格的白色背景上重新创建。任何帮助都将不胜感激。
我设法找到了边缘,并从jpg中裁剪了它,所以我剩下的只有这张图片:

我试图用OpenCV的findContours或Hough Line变换来检测轨迹,但在高斯模糊后我的边缘发现给我留下了:

。。这不是很有帮助。
hough线如下所示:

谁能给我指个方向?提前谢谢。
编辑:
我做了局部直方图,然后是高斯模糊和另一个Canny边缘检测。局部直方图图像为:

然后,精明的边缘检测是:

发布于 2017-02-16 05:17:05
您可以尝试使用Sobel和Laplacian检测器,如下所示
img = cv2.imread('experiment.png')
img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
img = cv2.GaussianBlur(img,(3,3),0)
laplacian = cv2.Laplacian(img,cv2.CV_64F)
sobelx = cv2.Sobel(img,cv2.CV_64F,1,0,ksize=1)
figure = plt.figure(figsize=(10,10))
sobel = figure.add_subplot(1,2,1)
sobel.imshow(sobelx,cmap='gray')
sobel.set_title('Sobel in x')
sobel.set_axis_off()
laplacianfig = figure.add_subplot(1,2,2)
laplacianfig.imshow(laplacian,cmap='gray')
laplacianfig.set_title('Laplacian')
laplacianfig.set_axis_off()给出以下输出

如您所见,可以使用Sobel运算符来检测这些行。也许你可以画出那些像素强度低于平均值的点。
https://stackoverflow.com/questions/42258048
复制相似问题