回答您的问题:
“我应该如何解决这个问题?”
这取决于您想要/需要获得的结果。这是一个“业余”项目(即使与工作相关),还是您需要构建一个机器视觉系统来解决问题,并且它应该符合某些法规或标准?
“我应该学习哪些算法?”
我非常感兴趣您的问题,但我不是气象学领域的专家,因此在相关文献中搜索对我来说是一项耗时的任务...因此我保留将来更新答案的部分。我认为解决问题涉及到不同的算法,有些非常通用,例如
image segmentation的算法,有些非常特定,例如如何测量能见度。
更新:在文献中搜索的关键词之一是“气象能见度”,例如...
HAUTIERE, Nicolas, 等. 通过使用车载摄像头自动检测雾霾并估计能见度距离。《机器视觉和应用》, 2006, 17.1: 8-20.
LENOR, Stephan, 等. 一种改进的模型,用于从路面亮度曲线估算气象能见度。在: Pattern Recognition. Springer Berlin Heidelberg, 2013. p. 184-193.
OpenCV能帮我吗?
是的,我认为OpenCV可以帮助您找到一个起点。
一个朴素算法的想法:
- 对图像进行分割,以获取属于标志和背景的像素区域。
- 按照某些程序计算能见度的测量值,该测量值由一个函数计算,该函数的输入为所有标志和背景区域的区域。
如果标志总是处于图像内部的相同固定位置,则可以大大简化分割过程。
能见度的测量显然是算法的核心,可以通过多种方式进行...
您可以采用简单的方法,根据标志和背景区域的平均灰度级别计算能见度的数学公式。
您可以采用更复杂和面向机器学习的方法,实现一种模仿当前人类基于过程的算法。在这种情况下,您的问题可以被框架为一个
监督学习任务:您有一组训练示例,每个训练示例都是由a)跑道的照片(
输入)和b)与该照片相关的并由人类计算的可见度(
期望输出)组成的对。然后,系统通过训练集进行训练,当您将新照片作为输入时,它将返回给您可见度测量。我认为您已经记录了过去的可见度测量日志(METAR?),如果您也保存了相关的图像,那么您已经有足够的数据来构建
训练集和
测试集。
卷积神经网络时代的更新:
YOU, Yang等人。相对CNN-RNN:从图像中学习相对大气能见度。《IEEE图像处理交易》,2018年。