当前位置: 首页 > 知识库问答 >
问题:

使用Azure机器学习检测图像中的符号

淳于博
2023-03-14

四年前,我发布了这个问题,得到了一些答案,不幸的是,超出了我的技能水平。我刚刚参加了一个build tour会议,他们在会上谈到了机器学习,这让我想到了使用ML来解决我的问题的可能性。我在azure站点上发现了这一点,但我认为它对我没有帮助,因为它的范围非常狭窄。

以下是我正在努力实现的目标:

我有一个源图像:

ML是解决这个问题的好工具吗?如果是的话,有什么开始的建议吗?

共有1个答案

樊烨烨
2023-03-14

据我所知,Project Oxford(MS Azure CV API)不适合您的任务。它们的API非常专注于面对相关任务(检测、验证等)、OCR和图像描述。而且显然你不能扩展他们的模型或者从现有的模型中训练新的模型。

然而,即使我不知道一个开箱即用的解决方案,您的对象检测问题;有足够容易的方法,你可以尝试,这将给你一些起点结果。

例如,下面是一个您可以使用的简单方法

要训练您的模型,您只需要读取步骤1中生成的图像,并将它们转化为一个向量并相应地标注它们。这将是支持您的模型的数据集。如果您使用的是灰度图像,那么矢量中的每个位置将对应于0-255范围内的像素值。根据算法的不同,您可能需要将这些值缩放到[0-1]范围内(这是因为某些算法在该范围内的值执行得更好)。请注意,在这种情况下重新缩放范围相当容易(new_value=value/255)。

您还需要拆分您的数据集,保留一些示例用于训练,保留一个子集用于验证,保留另一个用于测试。同样,有不同的方法可以做到这一点,但我要尽可能地保持这个答案的天真。

3)执行检测:所以现在让我们开始有趣的部分。给定任何图像,你想运行你的模型,并在有标志的图片中产生坐标。有不同的方法可以做到这一点,我将描述一个可能不是最好的,也不是更有效的,但在我看来它更容易开发。

你将扫描图片,提取一个“窗口”中的像素,重新缩放这些像素到你在步骤1中选择的大小,然后将它们提供给你的模型。

如果模型给你一个肯定的答案,那么你就在原始图像中标记那个窗口。由于徽标可能以不同的比例出现,您需要用不同的窗口大小重复此过程。您还需要调整窗口之间的空间。

4)重复:在第一次迭代时,你很可能会得到很多假阳性。然后你需要把这些作为反面的例子,重新训练你的模型。这将是一个迭代过程,希望在每一次迭代中,你的假阳性和假阴性会越来越少。

一旦你对你的解决方案感到满意,你可能会想要改进它。您可能想尝试其他分类算法,如SVM或深度学习人工神经网络,或者尝试更好的对象检测框架,如Viola-Jones。而且,您将可能需要使用交叉验证来比较您的所有解决方案(您实际上可以从一开始就使用交叉验证)。到这时,我敢打赌,你会有足够的信心,你想要使用OpenCV或另一个准备好使用的框架,在这种情况下,你将有一个公平的理解,在引擎盖下发生了什么。

同样,您也可以忽略所有这些答案,去学习像下面这样的OpenCV对象检测教程。或者从像这样的另一个问题中得到另一个答案。祝你好运!

 类似资料:
  • 我已经找了几个小时了,但找不到一个能回答这个问题的东西。我已经创建并发布了一个新的Azure机器学习服务,并创建了一个endpoint。我可以使用Postman REST客户机调用服务,但是通过JavaScript网页访问它会返回一个控制台日志,说明该服务启用了CORS。现在,对于我来说,我想不出如何为Azure机器学习服务禁用CORS。如有任何帮助,不胜感激,谢谢!

  • 从sklearn加载流行数字数据集。数据集模块,并将其分配给可变数字。 分割数字。将数据分为两组,分别命名为X_train和X_test。还有,分割数字。目标分为两组Y_训练和Y_测试。 提示:使用sklearn中的训练测试分割方法。模型选择;将随机_状态设置为30;并进行分层抽样。使用默认参数,从X_序列集和Y_序列标签构建SVM分类器。将模型命名为svm_clf。 在测试数据集上评估模型的准确

  • 在机器学习中,灰度图像的特征提取是一个难题。 我有一个灰色的图像,是用这个从彩色图像转换而来的。 我实际上需要从这张灰色图片中提取特征,因为下一部分将训练一个具有该特征的模型,以预测图像的彩色形式。 我们不能使用任何深度学习库 有一些方法,如快速筛选球。。。但我真的不知道如何才能为我的目标提取特征。 以上代码的输出就是真的。 有什么解决方案或想法吗?我该怎么办?

  • Scikit-learn (http://scikit-learn.org/) 是一个机器学习领域的开源套件。整个专案起始于 2007年由David Cournapeau所执行的Google Summer of Code 计画。而2010年之后,则由法国国家资讯暨自动化研究院(INRIA, http://www.inria.fr) 继续主导及后续的支持及开发。近几年(2013-2015)则由 IN

  • 这份文件的目的是要提供 Python 之机器学习套件 scikit-learn (http://scikit-learn.org/) 的中文使用说明。一开始的主要目标是详细说明 scikit-learn 套件中的范例程式的使用流程以及相关函式的使用方法。目前使用版本为 scikit-learn version 0.19 以上

  • Scikit-learn 套件的安装 目前Scikit-learn同时支持Python 2及 3,安装的方式也非常多种。对于初学者,最建议的方式是直接下载 Anaconda Python (https://www.continuum.io/downloads)。同时支持 Windows / OSX/ Linux 等作业系统。相关数据分析套件如Scipy, Numpy, 及图形绘制库 matplot