哪位大虾能给一个bmp图像k均值分类的算法源码和原理啊!急

betteryear 2004-04-14 09:40:16
帮帮忙吧,小弟谢过了先。
...全文
55 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
酒红绿叶 2004-04-26
  • 打赏
  • 举报
回复
center就是当前遍历到的那个点,,

因为你要取与这个点最邻近的K个点,所以与之相减然后排序!
betteryear 2004-04-26
  • 打赏
  • 举报
回复
程序中的center 是如何取值的?
yang104 2004-04-21
  • 打赏
  • 举报
回复
TO:puhuofeie(扑火飞蛾)
程序中的center 是如何取值的?

酒红绿叶 2004-04-19
  • 打赏
  • 举报
回复
int k,l;
float temp;
float fResult;

float *fpMidian;//存放与选择点最临近的k个值

fpMidian = new float [iTempK];

for( k=0;k<iTempH*iTempW;k++ )
fpArray[k] = fpArray[k] - center;

temp = 0;

for( k=0;k<iTempH*iTempW;k++ )//排序
{
for( l=k+1;l<iTempH*iTempW;l++ )
{
if( abs( fpArray[k] ) > abs( fpArray[l] ) )
{
temp = fpArray[k];
fpArray[k] = fpArray[l];
fpArray[l] = temp;
}//由小到大
}
}

for( k=0;k<iTempK;k++ )
{
fpMidian[k] = fpArray[k]+center;
}//取前k个

fResult = 0;

for( k=0;k<iTempK;k++ )//排序
{
for( l=k+1;l<iTempK;l++ )
{
if( fpMidian[k] > fpMidian[l] )
{
temp = fpMidian[k];
fpMidian[k] = fpMidian[l];
fpMidian[l] = temp;
}//由小到大
}
}
fResult =abs( fpMidian[ int (iTempK*1.0/2) ] );

delete [] fpMidian;

return fResult;
yang104 2004-04-19
  • 打赏
  • 举报
回复
TO:puhuofeie(扑火飞蛾)
我也在学做这方面的,下次算法带来时也给我发一份,谢谢!!!
酒红绿叶 2004-04-16
  • 打赏
  • 举报
回复
算法没带,

对一点取模板,

对它的8邻域加上本身9个点取与本身最近的k个点,取k均值,
代替本身像素!

betteryear 2004-04-15
  • 打赏
  • 举报
回复
没人理啊,自己顶一下

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧