如何解决OpenCV方法来检测农业领域中未切割的行边界
对于agricultural field 我使用calcOpticalFlowFarneback方法来接受此操作
图像序列中的
图像,看起来非常健壮。
但是我在后续步骤上遇到了麻烦-查找已切割/未切割的草地边界线。 AdaptiveThreshold,erote和dilate方法无法为我提供良好的结果,并且在视频Feed上似乎也不可靠-也许我只是搞砸了参数:
adaptiveThreshold(grayFrame,bw,255,ADAPTIVE_THRESH_MEAN_C,THRESH_BINARY_INV,11,1);
Mat verticalStructure = getStructuringElement(MORPH_ELLIPSE,Size(1,2));
erode(bw,bw2,verticalStructure,Point(-1,-1),3);
dilate(bw,3);
Mat structuringElement = getStructuringElement(MORPH_ELLIPSE,Size(2,4));
morphologyEx( bw2,MORPH_CLOSE,structuringElement,3);
我应该尝试其他方法,例如神经网络,卡尔曼滤波器,还是可以从第一步接收结果-灰度图像?
解决方法
“”“我应该尝试其他方法,例如神经网络,卡尔曼滤波器,还是可以从第一步接收结果-灰度图像?”“”
answer 是,我会尝试另一种方法。这是神经网络一直做得很好的事情。有几个“开箱即用”的预先训练的细分网络(首先尝试使用U-net)可以让您抢先一步。
您将需要:
-使用一堆图像创建标记的数据:在未收获的区域上创建遮罩。
-使用您的数据“微调”网络。 keras finetuning documentation
当然,与任何此类问题一样,您可能会遇到其他障碍,例如:
-使用多少图片/作物
-如何预测整个图像
-并且最重要的是,假设您可以完美遮盖场图像的未切割区域,您的问题实际上得到解决了吗?我一直做的练习是假装我有一个黑匣子,它将给我带来完美的结果(在您的情况下,是一个不错的二进制掩码)……然后完成该任务的下游整个任务。如果能够解决问题,那么值得花时间进行机器学习...否则,那是浪费时间。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。