机器学习:标志可见性

8
我在机场工作,我们需要确定飞行员的能见度条件。
为了做到这一点,我们在跑道每200米放置标志,以便确定能见度有多远。我们有多条跑道,需要每小时检查一次能见度。
目前,能见度检查是由人工进行的,他们查看每个跑道末端摄像机拍摄的照片。因此,这可能会很繁琐。
我是一名程序员,对机器学习几乎没有经验,但这听起来像是一个易于自动化的问题。我应该如何解决这个问题?我应该学习哪些算法?OpenCV会对我有帮助吗?
谢谢!

你能发布一些图片和相关的可见度措施吗? - Alessandro Jacopson
6个回答

3
我认为这可以通过计算机视觉技术实现自动化。OpenCV可以使实现更加容易。如果所有的标志都是相似的,那么我们可以训练程序在特定条件(光照)下识别标志。然后,我们可以使用经过训练的分类器定期检查标志的可见性,使用一个简单的脚本即可。OpenCV中已经有Harr-like特征提取功能。您可以使用它来训练分类器,该分类器将输出.xml文件,并使用该.xml文件定期检测标志。我之前使用了OpenCV做了一个类似的项目RTVTR(实时车辆跟踪和识别),并且效果非常好。 http://www.youtube.com/watch?v=xJwBT76VEZ4

2
回答您的问题:
“我应该如何解决这个问题?”
这取决于您想要/需要获得的结果。这是一个“业余”项目(即使与工作相关),还是您需要构建一个机器视觉系统来解决问题,并且它应该符合某些法规或标准?
“我应该学习哪些算法?”
我非常感兴趣您的问题,但我不是气象学领域的专家,因此在相关文献中搜索对我来说是一项耗时的任务...因此我保留将来更新答案的部分。我认为解决问题涉及到不同的算法,有些非常通用,例如image segmentation的算法,有些非常特定,例如如何测量能见度。
更新:在文献中搜索的关键词之一是“气象能见度”,例如...

HAUTIERE, Nicolas, 等. 通过使用车载摄像头自动检测雾霾并估计能见度距离。《机器视觉和应用》, 2006, 17.1: 8-20.

LENOR, Stephan, 等. 一种改进的模型,用于从路面亮度曲线估算气象能见度。在: Pattern Recognition. Springer Berlin Heidelberg, 2013. p. 184-193.

OpenCV能帮我吗?

是的,我认为OpenCV可以帮助您找到一个起点。

一个朴素算法的想法:

  1. 对图像进行分割,以获取属于标志和背景的像素区域。
  2. 按照某些程序计算能见度的测量值,该测量值由一个函数计算,该函数的输入为所有标志和背景区域的区域。

如果标志总是处于图像内部的相同固定位置,则可以大大简化分割过程。

能见度的测量显然是算法的核心,可以通过多种方式进行...
您可以采用简单的方法,根据标志和背景区域的平均灰度级别计算能见度的数学公式。
您可以采用更复杂和面向机器学习的方法,实现一种模仿当前人类基于过程的算法。在这种情况下,您的问题可以被框架为一个监督学习任务:您有一组训练示例,每个训练示例都是由a)跑道的照片(输入)和b)与该照片相关的并由人类计算的可见度(期望输出)组成的对。然后,系统通过训练集进行训练,当您将新照片作为输入时,它将返回给您可见度测量。我认为您已经记录了过去的可见度测量日志(METAR?),如果您也保存了相关的图像,那么您已经有足够的数据来构建训练集测试集
卷积神经网络时代的更新:
YOU, Yang等人。相对CNN-RNN:从图像中学习相对大气能见度。《IEEE图像处理交易》,2018年。

1
Both Tensor和uvts_cvs的回复非常有帮助。虽然opencv主要是为了识别符号模式甚至将其从背景中分割出来,但当您提取问题核心特征:可见性时,您可能仍需要在训练集中包括背景信号。我假设可见性的手动检查基于图像对比度,如果是这样,信噪比(SNR)或对比度噪声比(CNR)是学习中的一个好特征。阈值被定义为分类'visible-1'和'invisible-0'。 SNR / CNR可以自动获得,特别是如果您的标志位置和大小在相机图像中固定。

1
收集大量照片和视频,提出它作为 Kaggle上的挑战。我相信很多人会尝试解决它,即使奖励不是很高。

0

0

由于这是一个非常受控制和静态的环境,您可以使用基于视觉的方法来完美地估计能见度。然而,决定采取哪种方法并不容易。在我的论文中,我深入研究了道路交通这种不太受控制的环境下的这个主题。请参阅:LENOR, Stephan. Model-Based Estimation of Meteorological Visibility in the Context of Automotive Camera Systems. 2016. Doktorarbeit. (https://archiv.ub.uni-heidelberg.de/volltextserver/20855/1/20160509_lenor_thesis_final_print.pdf)。

我认为您可以遵循两个主要方向:

  1. 基于模型的方法:优点:不太依赖于您非常特定的设置。您不需要大量收集数据。
  2. 基于数据的方法/机器学习:优点:可以隐藏不同光线和天气条件的整个复杂性。如果现在有人在做这项工作,您似乎有一个很好的数据来源。非常有前途,没有太多的工程努力(只需使用轻量级CNN和少量层即可)。

你也可以将两者结合起来,等等。如果你仍然对解决方案感兴趣,可以再次联系我,我很乐意进行更深入的咨询。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接