标签: centroid

如何计算点的arylylist的质心

我试图分别从ArrayList的点添加所有x和y坐标.

public static ArrayList knots = new ArrayList<Point>();



public Point centroid()  {
        Point center = new Point();
            for(int i=0; i<knots.size(); i++) {
            ????????????????????
        return center;
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能找到质心?

java arraylist points centroid

4
推荐指数
1
解决办法
1万
查看次数

Matlab的bwlabel,regionprops和质心函数的解释

我花了一整天时间阅读上述MATLAB函数.即使在MathWorks网站上,我也无法在网上找到任何好的解释!

我会很感激,如果任何人都可以解释bwlabel,regionprops和centroid.如果应用于灰度图像,它们如何工作?

具体来说,它们正在下面的代码中使用.以上功能如何应用于下面的代码?

fun=@minutie; L = nlfilter(K,[3 3],fun); 
%% Termination LTerm=(L==1); 
figure; imshow(LTerm) 
LTermLab=bwlabel(LTerm); 
propTerm=regionprops(LTermLab,'Centroid'); 
CentroidTerm=round(cat(1,LTerm(:).Centroid)); 
figure; imshow(~K) 
set(gcf,'position',[1 1 600 600]); hold on 
plot(CentroidTerm(:,1),CentroidTerm(:,2),'ro') 
Run Code Online (Sandbox Code Playgroud)

matlab image image-processing centroid

4
推荐指数
1
解决办法
2万
查看次数

如何计算python中x,y坐标的质心

我有很多x,y坐标,我根据它们之间的距离聚集在一起.现在我想计算每个x,y坐标簇的质心量度.有没有办法做到这一点?

我的坐标格式为:

    coordinates_cluster = [[x1,x2,x3,...],[y1,y2,y3,...]]
Run Code Online (Sandbox Code Playgroud)

每个簇的最小长度为三个点,并且所有点都可以具有负x和y值.我希望有人可以帮助我.

最好,马丁

(我在Windows 7系统上使用带有canopy 1.1.1(32位)的python 2.7.)

python points coordinate-systems centroid

3
推荐指数
2
解决办法
1万
查看次数

如何计算C中多边形的质心

我试图围绕质心旋转多边形,但我对公式的编码感到困惑.

float x[32];
float y[32];
float cx=0;
float cy=0;
int j,n;
printf("How many angles :")
scanf("%d" ,&n);
//get (x[j],y[j]);
for (j=0; j<n; j++){
printf("x%d : ",j+1);
scanf("%f" ,&x[j]);
printf("y%d : ",j+1);
scanf(input, "%f" ,&y[j]);
}
//find a
//find cx
//find cy
printf("The centroid of the polygon is (%f,%f)",cx,cy);
Run Code Online (Sandbox Code Playgroud)

多边形公式的质心
http://i.stack.imgur.com/qjezn.png

c graphics 2d centroid

3
推荐指数
1
解决办法
3795
查看次数

Python:.wav 文件的光谱质心?

我需要定义一个“频谱质心”函数来分析音频文件,但我无法将数学公式转换为代码。如果有人能帮助我那就太好了,我没有主意了。

有问题的公式是:

http://en.wikipedia.org/wiki/Spectral_centroid

我已经能够通过以下方式计算信号的频谱平坦度

def spectral_flatness(x): 
    X_f = fft(x) 
    N = len(X_f) 
    magnitude = abs(X_f[:N/2]) 
    sf = geom_mean(magnitude) / aritm_mean(magnitude) 
    return sf
Run Code Online (Sandbox Code Playgroud)

这是我如何将数学公式转换为代码的示例。我对此很陌生,所以一个小举动仍然非常具有挑战性。我找到了有关几何质心的信息,但没有找到有关光谱质心的信息。

python audio centroid

3
推荐指数
1
解决办法
6058
查看次数

Three.js r68 - 无法使用OBJMTLLoader获取几何体的质心

我已经使用旧版本的Three.js很长一段时间了,所以我决定升级到最新版本(r68).我知道我会碰到一些问题,但我不希望删除geometry.computeCentroids()和.centroid属性.

我正在使用OBJMTLLoader库加载模型.这个问题是因为它不再有.computeCentroids()方法,所以我无法获取它们.我试图用其他方法计算它们,但无济于事:

我也试过使用.localToWorld(point)方法,但它们也没有用.它总是返回(0,0,0).

现在,当我点击一个网格时,我正在计算(或试图计算)它的质心:

 if (mesh.centroid === undefined) {
    mesh.centroid = new THREE.Vector3();
    mesh.centroid = mesh.geometry.center();
    console.log(mesh.centroid); }
Run Code Online (Sandbox Code Playgroud)

每当我向场景添加一个新对象(具有子网格物体)时,我也会使用它:

//desperate try to find different values for centroids
object.updateMatrix();
scene.updateMatrix();
object.updateMatrixWorld();
scene.updateMatrixWorld();
Run Code Online (Sandbox Code Playgroud)

更奇怪的是,我试图计算的质心并不一致.它总是在console.log()中显示相同的向量,无论我点击网格的顺序.

THREE.Vector3 {x: 158.89799999999997, y: -4.115949999999998, z: 67.75310000000002, constructor: function, set: function…}
THREE.Vector3 {x: 0.000005004882780212938, y: 0.16375010757446518, z: 0.0000024658203301441972, constructor: function, set: function…}
THREE.Vector3 {x: -1.7053025658242404e-13, y: -0.0818749484539012, z: 1.1368683772161603e-13, constructor: function, set: function…}
Run Code Online (Sandbox Code Playgroud)

我想知道是否有人有类似的问题.我没有尝试过以前的three.js版本,因为我真的想升级到最新版本并保持一致.

先感谢您.

编辑:忘了提一个重要的细节.我想要WORLD坐标中的质心.

使用mrdoob的方法后,我得到了一个质心.我总是为每个网格获得相同的值,因为即使我在每个网格上使用.calculateBoundingBoxes(),这些边界也会引用主父对象.每个几何体都分配了所有对象的顶点,我假设边界框是根据这些顶点计算的,这就是为什么我为每个几何体获得相同的值.

javascript three.js centroid

3
推荐指数
1
解决办法
2306
查看次数

在R中提取形状文件对象的质心?

我有一个形状文件,上传到以下路径:

https://drive.google.com/open?id=0B1ITb_7lHh1EUFVfVWc4ekRfSnc

我使用“shapefiles”包中的“read.shapefiles”函数导入了数据:

landuse<- read.shapefile("landuse")
Run Code Online (Sandbox Code Playgroud)

我现在需要提取 landuse 对象内所有形状的纬度/经度质心并将其添加到 landuse$dbf 数据帧

我尝试了两件事:

lu_df<-coordinates(landuse)
lu_df<-SpatialPoints(landuse)
Run Code Online (Sandbox Code Playgroud)

两者都给了我以下错误:

Error in coordinates(as.data.frame(obj)) : 
  error in evaluating the argument 'obj' in selecting a method for function 'coordinates': Error in data.frame(record = 1L, content.length = 80L, shape.type = 5L,  : 
  arguments imply differing number of rows: 1, 4, 7
Run Code Online (Sandbox Code Playgroud)

我不确定如何进行。

r geospatial shapefile centroid

3
推荐指数
1
解决办法
3801
查看次数

快速计算二进制numpy数组的质心

我有一个 0 和 1 的 numpy 数组(512 x 512)。我想计算1 形状的质心(它们都连接在阵列中间的一个圆形斑点中)。

for i in xrange(len(array[:,0])):
    for j in xrange(len(array[0,:])):
        if array[i,j] == 1:
            x_center += i
            y_center += j

count = (aorta == 1).sum()
x_center /= count
y_center /= count
Run Code Online (Sandbox Code Playgroud)

有没有办法加快我上面的计算?我可以使用 numpy.where() 之类的吗?是否有任何 python 函数可以并行执行此操作?

performance numpy vectorization python-2.7 centroid

3
推荐指数
1
解决办法
2363
查看次数

在python中计算矩形的质心

我想计算矩形的质心,矩形的坐标如下:

co_ord = (601, 1006,604, 1009)  ## (xmin,ymin,xmax,ymax)
Run Code Online (Sandbox Code Playgroud)

有人可以指出一个简单的方法。谢谢

python rectangles centroid

3
推荐指数
2
解决办法
7517
查看次数

在 R 中执行 gCentroid 时出错

我无法从 R 中的多边形获取质心。令人困惑的是,它过去可以工作,但突然停止工作了!这是一段代码:

polygon.centroids <- SpatialPointsDataFrame(gCentroid(polygon, byid = TRUE), 
                                      polygon@data, match.ID = FALSE)
Run Code Online (Sandbox Code Playgroud)

我还可以确认多边形数据的 proj4string 已经存在,如下所示:

proj4string:    +proj=utm +zone=55 +south +ellps=GRS80 +units=m +no_defs
Run Code Online (Sandbox Code Playgroud)

我在执行质心代码时收到的错误消息如下:

   Error in TopologyFunc(spgeom, id, byid, "rgeos_getcentroid") : 
  no slot of name "proj4string" for this object of class "sf" 
Run Code Online (Sandbox Code Playgroud)

知道发生了什么事吗?如前所述,这段代码过去运行良好。

谢谢

r polygon centroid rgeo-shapefile

3
推荐指数
1
解决办法
3202
查看次数