广告广告
  加入我的最爱 设为首页 风格修改
首页 首尾
 手机版   订阅   地图  繁体 
您是第 4496 个阅读者
 
发表文章 发表投票 回覆文章
  可列印版   加为IE收藏   收藏主题   上一主题 | 下一主题   
ptrlin
数位造型
个人文章 个人相簿 个人日记 个人地图
小人物
级别: 小人物 该用户目前不上站
推文 x0 鲜花 x2
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片
推文 x0
[Delphi][求助] 用Borland C++Builder求面积
题目是 有一张图 我将它作完二值化后 只有黑跟白
白色是它的背景 黑色为一个不规则的多 ..

访客只能看到部份内容,免费 加入会员 或由脸书 Google 可以看到全部内容



献花 x0 回到顶端 [楼 主] From:欧洲 | Posted:2008-03-18 03:31 |
overing 手机
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x0 鲜花 x55
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

如果图不大
可以用土法炼钢的方法
计算像素数量 表情


Zippy G2 600W
Intel C2Q Q9550
Gigabyte GA-X48-DQ6
Gigabyte GV-NX96T512H-B
G-skill pi 1100MHz 2Gx4
ACARD ANS-9010 32GB (Windows7 10sec boot!!)
WD 150GB(WD1500ADFD)/640GB(6400AASK)
献花 x0 回到顶端 [1 楼] From:未知地址 | Posted:2008-03-19 12:44 |
ptrlin
数位造型
个人文章 个人相簿 个人日记 个人地图
小人物
级别: 小人物 该用户目前不上站
推文 x0 鲜花 x2
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

网路上看到的程式码:

下面是我用的方式 您参考看看
XX,YY 就是你要的质心
sum就是你要的面积

void __fastcall TForm1::Button13Click(TObject *Sender)
{
Graphics::TBitmap *Bmp = new Graphics::TBitmap();
Byte *ptr;
int r,g,b;
int i,j,XX,YY;
int sum=0,X=0,Y=0;
Bmp->Assign(Image1->Picture->Bitmap);
Bmp->PixelFormat=pf24bit;

for (int i=0;iHeight;i++ )
  {
  ptr=(Byte*)Bmp->ScanLine;
  for (int j=0;jWidth; j++ )
  {
  b=ptr[j*3];
  g=ptr[j*3+1];
  r=ptr[j*3+2];

  if(r==0&&g==0&&b==0&&iHeight&&jWidth)
  {
  sum=sum+1;
  X=X+j;
  Y=Y+i;
  XX=X/sum;
  YY=Y/sum;
  Form1->Edit1->Text=XX;
  Form1->Edit2->Text=YY;
  Form1->Edit3->Text=sum;
  }
  }
  }
}
F9去Run没问题
但真正去开图找面积跟质心时
在 g=ptr[j*3+1];
这一行有问题 接着程式会有点当掉 看不到错误讯息
不知如何修改 表情
另外质心不是只有一个吗? 不晓得为啥他用到XX跟YY ?


献花 x0 回到顶端 [2 楼] From:欧洲 | Posted:2008-03-21 18:56 |

首页  发表文章 发表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.070276 second(s),query:16 Gzip disabled
本站由 瀛睿律师事务所 担任常年法律顾问 | 免责声明 | 本网站已依台湾网站内容分级规定处理 | 连络我们 | 访客留言