如何找到物体的质心? 我正在研究一个C++项目,我在试图找到一个对象的质心(坐标x和y)方面遇到了问题…

如何找到物体的质心? 我正在研究一个C++项目,我在试图找到一个对象的质心(坐标x和y)方面遇到了问题…,c++,centroid,C++,Centroid,我有一个250x250像素的图像,这个图像是白色的,对象是黑色的,我需要找到这个黑色对象的质心(这个黑色对象是一个几何图形) 我使用以下方法计算所有黑色像素: for(i=0; i<high; i++) { for(j=0; j<width; j++) { if(Img->imx[i*width+j]==0) { c=c+1; }

我有一个250x250像素的图像,这个图像是白色的,对象是黑色的,我需要找到这个黑色对象的质心(这个黑色对象是一个几何图形)

我使用以下方法计算所有黑色像素:

for(i=0; i<high; i++) 
{
    for(j=0; j<width; j++)  
    {
        if(Img->imx[i*width+j]==0)
        {
        c=c+1;
        }                                                   

    }

对于(i=0;i如果对象具有均匀密度,则可以通过计算黑色像素所有坐标的平均值来计算质心

int c = 0;
double x = 0, y = 0;
for(i=0; i<high; i++)
{
    for(j=0; j<width; j++)
    {
        if(Img->imx[i*width+j]==0)
        {
             c=c+1;
             x=x+j;
             y=y+i;
        }
    }
}
if(c>0)
{
    x=x/c;
    y=y/c;
}
intc=0;
双x=0,y=0;
对于(i=0;i0)
{
x=x/c;
y=y/c;
}

你为什么让你的问题变得更糟?我正在修正我的翻译问题是你不知道质心的公式?还是你不知道如何编写计算公式的代码?嗨@RaymondChen我在下一条评论中找到了答案…谢谢你只是想帮你问更好的问题,而不是希望人们可以理解你的意思。@Damariperalesojeda:如果这个答案对你有帮助,别忘了接受它,