【发布时间】:2017-11-06 14:40:09
【问题描述】:
如何根据下图用opencv准确统计玉米树?我已经尝试使用 inRange 进行 HSV 转换,但到目前为止一无所获。
有没有一种方法可以正确计算树木数量?即使降噪,我认为它也不会算作财产。
【问题讨论】:
-
尝试一些模板匹配...
-
你能给我举个例子吗?
如何根据下图用opencv准确统计玉米树?我已经尝试使用 inRange 进行 HSV 转换,但到目前为止一无所获。
有没有一种方法可以正确计算树木数量?即使降噪,我认为它也不会算作财产。
【问题讨论】:
我选择了一个模板如下... 当我尝试运行模板匹配时,我得到了以下匹配.. 匹配很好,因为我从图像的那部分选择了模板。但是,当阈值编辑时,包含完整图像不同区域匹配程度值的结果图像看起来像这样.. 因此,您可以看到,如果您计算白色斑块(忽略小噪音),您几乎可以得到可能的作物数量......!!
编辑
如果您尝试在RGB图像的绿色平面
中进行模板匹配,您可以获得更精确的结果【讨论】:
实施几个简单的预处理步骤后,您的问题更容易解决。看看我得到的结果:
步骤:
基于此图像模板匹配或其他检测方法应该会更好。
【讨论】:
#include <opencv2/imgproc/imgproc.hpp> #include <opencv2/highgui/highgui.hpp> using namespace cv; using namespace std; int main() { Mat src = imread("corn.jpg"); if (src.empty()) { return -1; } Mat lab; cvtColor(src, lab, CV_BGR2Lab); imshow("LAB", lab); return 0; } 我真的很坚持