问题标签 [centroid]

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.

0 投票
1 回答
504 浏览

opencv - 如何在我的 camshift 跟踪算法中找到椭圆的质心?

我正在使用opencvPython 从网络摄像头提要中跟踪用户,因此代码如下所示:

如何在代码中打印出这个椭圆的质心?我是否必须将图像 ( frame) 本身转换为灰度并使用轮廓质心来获取它?或者我可以只使用框(track_box),因为如果我已经有选择,使用轮廓似乎是多余的。

0 投票
0 回答
1882 浏览

matlab - 查找区域中质心的像素位置

我在 Matlab 中有一张图像,我在其中找到了所有的质心。图像中有多个质心,我正在使用“imellipse”来隔离其中一个。我正在尝试查找质心之一的像素位置。在 Matlab 的命令窗口中弹出位置就足够了。这是我的代码:

这是我试图推断质心标记的像素位置的图片。 http://imgur.com/DnSQTUi

0 投票
1 回答
3043 浏览

matlab - 试图在Matlab中找到一部分图像的质心

我试图找到一种方法在 Matlab 中围绕图像的一部分绘制一个框并找到该图像的质心。理想情况下,我希望“新”部分显示在我的原始图像旁边,然后我可以到那个“新”图像的质心。

这是我的代码:

这是我试图在上面放置蒙版并找到该部分的质心的图像。

在此处输入图像描述

0 投票
3 回答
2904 浏览

r - 对 2 个距离矩阵求和以获得第三个“整体”距离矩阵(生态环境)

我是生态学家,主要使用纯素 R 包。

我有 2 个矩阵(样本 x 丰度)(见下面的数据):

矩阵 1/ nrow= 6replicates*24sites, ncol=15 物种丰度(鱼) 矩阵 2/ nrow= 3replicates*24sites, ncol=10 物种丰度(无脊椎动物)

两个矩阵中的位点相同。我想获得成对站点之间的整体布雷柯蒂斯差异(考虑两个矩阵)。我看到 2 个选项:

选项 1,对重复(在站点规模)鱼类和大型无脊椎动物丰度进行平均,cbind 两个平均丰度矩阵(nrow=24sites,ncol=15+10 平均丰度)并计算 bray-curtis。

选项 2,对于每个组合,计算站点对之间的布雷-柯蒂斯相异度,计算站点质心之间的距离。然后对2个距离矩阵求和。

如果我不清楚,我在下面的 R 代码中做了这两个操作。

请您告诉我选项 2 是否正确且比选项 1 更合适。

先感谢您。

皮埃尔

下面是 R 代码示例

生成数据

选项 1,平均丰度和 cbind

选项 2,计算质心之间的每个组合距离并对 2 个距离矩阵求和

使用 Gavin Simpson 的 fuse() 对两个距离矩阵求和

总结两个欧几里得距离矩阵(感谢 Jari Oksanen 校正)

以及下面的“coord.centroid”,用于进一步基于距离的分析(是否正确?)

比较选项 1 和 2

0 投票
1 回答
977 浏览

python - 创建以质心为中心的三角形图像

对不起,我对编程有点陌生。基本上,我被分配到“分析”并生成一个三角形的图像,其中用户指定两条边的长度和它们之间的角度大小,程序运行并找到第三条边的长度以及两条边其他角度(使用余弦定律)。然后我必须有所有边长的文本输出,所有角度测量(可选),并以我的海龟的形式打印该区域,在图像中打印出“这是你的三角形\n它有一个 x 平方像素的区域”也是。此外,三角形的质心必须位于 (0,0)。这是我到目前为止所拥有的:

另外,我也为此使用了海龟图形。

我真的很挣扎。一些帮助将不胜感激!请帮忙!谢谢!

0 投票
2 回答
7433 浏览

algorithm - 图像处理 - 计算二值图像中空白质心的算法

问题是我需要一个简化版本的算法,它可以计算二进制图像中几个白色轮廓的质心。例如,如果只有一个白色轮廓,则轮廓中心的坐标 Xc 和 Yc 使用公式计算:

公式

其中 M 是强度 m_i 的总和,m_i 是像素强度值,x_i 和 y_i 是图像上的像素位置,n 是像素的总数。

任何人都可以提出类似的方法来处理多个轮廓,或者如何在使用相同的公式计算其中一个轮廓时忽略其他轮廓?

0 投票
3 回答
1951 浏览

java - Java PathIterator - 如何准确计算 Shape 对象的中心?

我正在尝试使用 PathIterator 来计算任何 Shape 对象的中心,以便可以计算弯曲路径,但是在找到标准 1x1 矩形的中心后,我的 getCenter() 方法会返回该点:

我的 getCenter() 方法:

我发现在打印 points.toString() 时,我在控制台中得到了这个:

我注意到点数组中有六个条目,而不是我期望的四个,因为输入的 Shape 对象是 Rectangle2D.Double(0, 0, 1, 1)。显然,它对点 (0, 0) 的解释比我想要的多两倍,我对为什么会这样感到困惑。它是 PathIterator.isDone() 方法的结果吗?我使用不正确吗?如果 PathIterator 不能解决我的问题怎么办?

0 投票
2 回答
635 浏览

center - 点簇的中心和轨迹形状

我有一些看起来像这样的点图。XY图1 XY图2 在此处输入图像描述

这些点形成的轨迹可以是圆形或椭圆形。显然,上面两张图片中圆形轨道的中心是不同的。

如何找到这些轨道的中心点(圆形/椭圆形)?我想找到作为中心的 (x,y) 坐标,它不必是绘制数据集中的一个点。即,我不想要一个medoid。

编辑:另外,我是否可以找到一个包含大部分这些点的圆/椭圆方程?在椭圆轨道中,我添加了一个椭圆来包围轨道上的点。这些值是通过反复试验计算的。中心也是通过观察该图来计算的。如何以编程方式执行此操作?

0 投票
2 回答
2123 浏览

c# - 查找旋转矩形的中心点

PointA在我的应用程序中,用户将两个点指向PointB同一行(可以是任何角度)。所以我有以下信息

  1. 点A坐标

  2. 点B坐标

  3. A点和B点之间的距离

  4. Across distance(取自用户作为输入以绘制其他点)

  5. 角度(从 pointA 和 pointB 计算)。

基于此信息,另一个应用程序绘制四个点(矩形的顶点)。

我要做的是,我必须找到这四个点(矩形)的中心点,才能正确绘制出这四个点之间的矩形。

现在我可以绘制以中心为 pointA 的矩形,这显然是不正确的。我应该使用什么公式来计算 Rectangle 的中心,以便我可以绘制一个有界矩形?

图 1:

在此处输入图像描述

图 2:

在此处输入图像描述

图 3:

在此处输入图像描述

图 4:

在此处输入图像描述

图 5:

在此处输入图像描述

如所附图像所示,在每种情况下,矩形都是以 pointA 为质心绘制的。虽然我想要质心到四个点的中心。

PS:所有角度均以北 0 度测量。

0 投票
2 回答
1435 浏览

java - 使用 kmeans 寻找最远的质心进行聚类

以下是如何使用 kmeans 算法的示例:http: //mnemstudio.org/clustering-k-means-example-1.htm

在这个例子中,作者使用“相距最远的两个人(使用欧几里得距离测量)”作为初始质心,正如人们所说。

如果我想要的不是两个集群,而是 10 个集群怎么办!如何选择前 10 个质心?有没有办法选择相距最远的十个人?或者我应该用另一种方式来选择它们。

PS:我认为在我的情况下使用随机选择不会很好。此外,我一直在尝试使用前 10 个个体作为质心,但我正在寻找一种更好的方法来选择它们。