我有一个焊接过程的视频,对于每个框架,我需要检测焊接区域的边缘以进一步测量该区域。 问题是视频的质量很差,所以我无法通过正常的方法检测帧的边缘,图像增强也不起作用。
我之前在Stackoverflow上发布了这个问题,一个人通过NEURAL NETWORKS设法增强了我感兴趣的领域。
我需要选择以下区域(Paint outline)。
这个成功的人,他给了我以下解释:
''''''我训练了一个神经网络来学习你想要分离的区域的模式。我将数据块放在像素中心,该像素位于您标记为您感兴趣的区域的区域之内或之外。因此,网络了解到如果一个像素具有该模式的邻居,它将该像素标记为1,否则为0.在学习模式之后神经网络的输出是this。然后,您只需使用Sobel即可获得edges of the result,这是您想要的区域。'''''''' ''
所以这就是我想要的确切结果。 但我根本不知道如何使用神经网络,或者如何做到这一点。
有人知道吗?
如果有人知道如何测量每个帧的轮廓区域面积(整个视频的代码),我将非常感激。
非常感谢你们。
这是原始问题_ ImageProcessing MatLab
的链接答案 0 :(得分:0)
使用sobel或canny检测边缘后,您可以使用openCV中的countour方法来检测ROI的边界。然后,您可以使用areacountour方法计算由该countour限定的区域
您可以将视频中的每个帧提取为独立的图像