【问题标题】:Where do I start learning about image processing and object recognition? [closed]我从哪里开始学习图像处理和对象识别? [关闭]
【发布时间】:2010-09-30 18:15:10
【问题描述】:

我有兴趣编写一些基本的计算机化对象识别应用程序,所以我认为我需要一些图像处理算法的理论背景,以及一些用于决策能力的 AI。

我是一名计算机科学专业的毕业生,有朝一日我计划获得硕士学位,希望在这些领域之一。同时,我想抢占先机并进行一些自学。

所以我的问题是,我从哪里开始?如果可能的话,我会很感激一个正确方向的箭头,一些链接。

【问题讨论】:

  • 您对计算机视觉感兴趣吗?
  • 基本上,是的,这就是最终结果。虽然我不是想制造一个杀手机器人或任何东西 =;-)

标签: image-processing theory computer-vision object-recognition


【解决方案1】:

不妨看看:OpenCV。非常好的图像处理库,当您知道将什么用于什么目的时,您可以看看“幕后”以了解它是如何工作的:)

【讨论】:

    【解决方案2】:

    欢迎来到有趣的计算机视觉世界,这基本上是您使用 AI 算法处理图像处理以进行识别/跟踪/分割等的领域。在不详尽的情况下,整个交易涉及图像采集、图像处理、图像分割, 图像识别。

    最简单的入门方法可能是 OpenCV。然而,在大多数应用程序中,使用 OpenCV 可能是多余的,因为从头开始并不难。一旦你通过了图片加载(你可能想考虑 BMP 因为它最容易解析)部分,如果你只有数学公式,你就可以实现许多基本的图像处理算法。您可能还可以尝试其他库,例如 torchvision、AForge (.NET) 是不错的选择。

    说到人工智能部分,事情就变得有趣了。您可能希望在可以使用大量库的地方使用 SVM,例如libsvm、SVMlight 等。

    【讨论】:

      【解决方案3】:

      如果您对书籍感兴趣,我推荐约翰·拉斯 (John Russ) 的入门级“图像处理和分析简介”。我还使用 ImageJ 作为一个很好的免费图像分析应用程序 - 非常适合原型设计和尝试。正如其他人所说,OpenCV 库也非常值得一看。

      【讨论】:

        【解决方案4】:

        Microsoft 最近发布了一个用 C# 和 C++ 实现的开源 .NET SDK,其中包含一些非常基本的网络摄像头接口和图像分析。可能值得使用browse around the extremely well documented code 来开始使用。

        【讨论】:

          【解决方案5】:

          您可能想查看这些类似问题的答案:

          【讨论】:

          • 呃...我应该对 SO 进行更彻底的搜索。
          【解决方案6】:

          很好的答案。我希望你不是数学恐惧症。这些天我最喜欢的技术是 Markov-Chain Monte Carlo (Google Spiegelhalter)。识别是一个优化问题,MCMC 是通过贝叶斯推理处理它们的通用方法。

          【讨论】:

            【解决方案7】:

            我已经用免费的源代码编写了一些 OpenCV 图像处理/计算机视觉教程,所以你可能想看看其中的一些来帮助入门:http://www.shervinemami.co.cc/openCV.html

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2011-03-23
              • 1970-01-01
              • 2018-12-21
              • 2011-04-09
              • 2010-09-10
              • 1970-01-01
              • 2010-10-02
              • 1970-01-01
              相关资源
              最近更新 更多