问题标签 [pattern-recognition]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
geometry - 如何计算形成闭合/开放形状的两个方向向量之间的角度?
我正在尝试找出正确的触发器。eq./function 确定以下内容:两个方向向量(已确定)之间的角度变化(以 DEGREES 为单位),表示两个线段。这用于形状识别(用户在屏幕上手绘)的上下文中。
所以基本上,
a) 如果用户绘制了一个(粗略的)形状,例如圆形、椭圆形或矩形等 - 构成该形状的线条被分解为 20 个点(xy 对)。
b)我有每个线段的DirectionVector。
c) 因此,LINE SEGMENT(x0,y0) 的 BEGINNING 将是前一行的 END 点(从而形成一个像矩形一样的闭合形状,比方说)。
所以,我的问题是,给定上下文(即确定多边形的类型),如何找到两个方向向量之间的角度变化(可作为 x 和 y 的两个浮点值)?
我见过很多不同的三角。方程式,我正在寻求澄清。
非常感谢各位!
python - 模式识别
智商为 70 的我根本不够聪明,无法找出我应该如何做到这一点。但!我想要的是......让 Python 例如从 MySQL 读取一个表并找到列的模式!就像,当 Y 列在“1.56”左右并且 Z 列在“756”左右时,X 列的值通常是“foo”,例如它找到了所有这些“明显”的数据......你们中的一些人有一个简单的计划吗?能做到吗?或者参考我一些信息,书籍等?不是天才的书!
而且,Python 适合这个吗?它将包含大约 600 000 行,大约 20 列……它位于当今标准的游戏计算机上……
accelerometer - 加速度计信号分割
我有一个一维加速度计信号(仅一个轴)。我想创建一个强大的算法,它能够识别信号中的某些形状。
首先,我将移动平均滤波器应用于原始信号。在附图中,原始信号为红色,平均信号为黑色。从图片中可以看出,从平均(黑色)信号中可以看到一些趋势 - 该信号包含 10 次重复的峰值模式,其中加速度攀升至最大值,然后回落。我用十字标记了这些模式的开始和结束。
所以我的目标是自动找到标记的位置。使模式提取困难的问题是:
- 模式的开始可能具有与模式结束不同的 y 值
- 该模式可能有多个峰值
- 我没有任何具体的时间信息(从模式的开始到结束需要 A 时间单位)
我尝试了不同的方法,这些方法几乎都是自制的,所以我不会提及它们——我不希望你对我的思维方式有偏见。是否有一些标准或书籍方法可以进行这种模式提取?或者,也许有人知道如何以稳健的方式解决这个问题?
任何想法将不胜感激。
algorithm - 三角网格的 3-D 形状检测
我正在寻找可以在 3-D 三角剖分网格中找到全部或部分简单 3-D 形状(球体、圆柱体、圆锥体等)的任何算法或源代码。
我发现了几篇关于算法的论文(例如看这个 PDF),它们可以在点云中找到形状。三角剖分可以很容易地转换为点云,但在我看来,如果你已经有了三角剖分,应该更容易找到形状,因为你有更多关于要匹配的表面的信息——例如在转换为点云。
任何指针将不胜感激。
image-processing - 在图像中查找特定字母的所有出现的好方法是什么?
就像,在.png 中找到所有 A 的位置,无论比例如何,但都正确旋转?
编辑:那些说这是一个比我想象的更困难的问题的人是正确的。我想添加一些细节;我正在寻找一种方法来从(黑白扫描的手写图像)中找到字母的位置,或者只给出字母的图像,找到它的 A-ness(WRT 某种字体) .
我意识到这是一个大项目,所以我想知道是否有任何开源库可以做这样的事情,或者一个简单的算法。我尝试了一些角落匹配方案,但没有运气。
python - Birdsong 音频分析 - 找出两个剪辑的匹配程度
我有大约 100 个 wav 音频文件,采样率为 48000 个相同物种的鸟类,我想测量它们之间的相似性。我从波形文件开始,但我(非常了解)更多关于使用图像的知识,所以我假设我的分析将在频谱图图像上进行。我有几个不同日子的鸟类样本。
以下是一些数据示例,以及(对于未标记的轴表示歉意;x 是样本,y 是线性频率乘以 10,000 Hz):
这些鸟鸣显然出现在“单词”中,歌曲的不同片段可能是我应该比较一下;相似词之间的差异以及各种词的频率和顺序。
我想尝试去除蝉噪声 - 蝉的啁啾频率相当一致,并且倾向于相位匹配,所以这应该不会太难。
似乎一些阈值可能有用。
有人告诉我,大多数现有文献都使用基于歌曲特征的手动分类,例如 Pandora Music Genome Project。我想像Echo Nest一样;使用自动分类。更新:很多人都在研究这个。
我的问题是我应该使用哪些工具进行此分析?我需要:
- 过滤/限制一般噪音并保留音乐
- 过滤掉像蝉这样的特定噪音
- 拆分和分类鸟鸣中的短语、音节和/或音符
- 创建零件之间差异/相似性的度量;可以识别鸟类之间差异的东西,最大限度地减少同一只鸟的不同叫声之间的差异
我选择的武器是 numpy/scipy,但是像 openCV 这样的东西在这里可能有用吗?
编辑:经过一些研究和史蒂夫的有用回答,更新了我的术语和重新措辞的方法。
neural-network - 模式识别训练(神经网络)
你如何训练神经网络进行模式识别?例如图片中的人脸识别,你将如何定义输出神经元?(例如,如何准确检测人脸在哪里,而不仅仅是说相机中有一张脸)。另外,如何检测多个人脸和不同大小的人脸?
如果有人能给我指点,那就太好了
干杯!
opencv - 关于手写识别的几个问题
你好我正在学习机器学习,我想用python和opencv编写一个简单的手写识别软件。
为简单起见,现在我将只识别相同大小的大写单词。我认为识别字母的好方法是使用期望最大化算法来学习高斯混合模型的参数,使用训练集并将新字母高斯混合与训练后的字母进行比较。但我不明白如何在混合物中选择多少高斯。
第二个问题是如何理解一页有多少个单词,一个单词有多少个字母。我不认为 em-algorithm 或类似的算法(例如 k-means)可能是解决方案,但肯定存在一些分割问题
一些忠告?
neural-network - 用于多种模式识别的神经网络输出层
假设我有一种方法或其他神经网络可以正确地对图像进行模式检测。我应该如何设计一个图像中有多个模式的神经网络?
假设在图像中要检测 X 个模式,那么最好的方法是什么?AFAIK 输出层神经元值应为 [-1,1]。我怎么知道是否有 X 数量的模式被识别?这是否意味着我必须对它可以识别的模式数量设置硬编码限制(因为输出神经元的数量是固定的)?
javascript - 在 JavaScript 中使用正则表达式来检查模式重用(例如,在字符串中声明两次的相同字符序列)
请注意这些文本字符串如何两次声明了单词“GARNSEY”:
现在它可以是 D GARNSEY(无中间名首字母)或 DB GARNSEY(包括中间名首字母),但我需要知道是否提到了 GARNEY,因为这意味着姓氏被提及两次,一次在开头,一次在结尾。
根据 JavaScript Programmer's Reference 一书:
“您可以在整个模式中重复搜索该确切符号......您可以使用 \1 来执行此操作。使用 \1 是指第一个分组表达式的结果。”
好的,所以我尝试“保存”第一组 \w{1,})\1 的结果,然后尝试在最后重用它,并尝试检查是否有中间名:
然而,JavaScript 解释器通过以下简单测试警告“失败”:
我是否误解了 \1 的目的,是否有任何解决方案可以使用正则表达式来做我想做的事情,如上所示?感谢您的回复。