【问题标题】:Creating a Tensorflow Model Based on Hough Lines创建基于霍夫线的 TensorFlow 模型
【发布时间】:2018-11-25 19:31:52
【问题描述】:

所以我有一个创建自动遥控车的项目。为了进行虚拟训练,我设置了一个模拟器来收集图片数据以及转向角度。然后我使用 OpenCV 程序,使用霍夫线检测,检测道路上的 3 条线。我想创建一个模型,当输入图像时,输出将是一个转向角。使用 TensorFlow,我用这些图像训练了一个 CNN,结果非常糟糕。

我应该使用什么样的模型?

我应该如何训练这些图像?

我还可以使用每一行的实际数据来训练数据,对于检测到的一行看起来像这样:

[[[0.0, 63.0, 54.0, 31.0, -0.5925925925925926]]]

检测到 2 行:

[[[0.0, 61.0, 34.0, 32.0, -0.8529411764705882], [41.0, 42.0, 43.0, 77.0, 17.5]]]

唯一的问题是我不知道如何处理可变大小的输入。帮忙?

【问题讨论】:

  • 我以为你在检测“路上的 3 条线路”?我在你的霍夫线图像中只能看到两条。
  • 如果你愿意,可以称我为一个无聊的老式老顽固,但我不确定你是否需要神经网络。我原以为你可以创建一个几何模型,当它遇到以前从未见过的曲线时,它可能更容易,也更可预测,而不是尝试训练神经网络给你一个转向角.注意我说“你”是因为当我不知道它可能的输入->输出关系在每一个情况下是什么时,我不可能让任何神经网络驾驶我的汽车遇到。
  • 可能有 3 行,但有时会漏掉一行,这需要考虑
  • 所以我猜您的解决方案需要两个输出:一个转向角,以及一个“需要人工控制”的信号,该信号会发出喇叭声,让驾驶员做出关键决定转向哪里?跨度>

标签: python pandas opencv tensorflow computer-vision


【解决方案1】:

现在已经很晚了,但我希望这个答案仍然有用。

CNN 是具有二维输入的 NN,因此具有恒定长度矩阵(例如图像)的馈送;但是它们的大部分学习能力来自于 CNN 能够从相关数据中学习这一事实,因此它将更好地处理未处理的图像(实际上卷积层执行自适应特征提取)。

我认为,如果您需要使用 CNN,您应该专注于将训练图像标记为右转、左转和完全不转的集合,以便对转弯侧进行分类,并将转向控制交给一些基于模糊逻辑的控制器例子。

如果您希望使用 NN 进行控制,我将使用循环的决策,因为您需要比较图片曲线随时间的变化

【讨论】:

    猜你喜欢
    • 2013-02-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-06
    • 1970-01-01
    • 2016-02-06
    • 1970-01-01
    • 2013-03-09
    相关资源
    最近更新 更多