求助像素循环问题

hellNo 2012-04-20 09:18:44


一张500*500的图片里面有两个不规则形状的图形,其余部分都是透明的,
如何从0,0坐标开始循环每个像素,然后把这两个形状的每一个边缘(只要边缘)的坐标列出来?
貌似用Color GetColor = image.GetPixel(X, Y); 这个方法??
我图像处理很糟糕呀,请求高人指教啊!!
最好给个例子!!
...全文
100 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
hwbox 2012-04-20
  • 打赏
  • 举报
回复
如果不考虑效率的话就直接遍历就好了,如果要说边缘判断的话。

是图形图像学中的东东了。N年前上学时学的,记不清了,错了的话。大牛勿批。

首先把该图像二元化,就变成纯黑白的。 扩大图像画布1px,可确保图像被白色包围。

得到一个0、1的矩阵。则矩阵中任一点与的周边的点位异或值为真即是边缘。

优化算法不记得了。

hellNo 2012-04-20
  • 打赏
  • 举报
回复
在顶?没人回答?
Ki1381 2012-04-20
  • 打赏
  • 举报
回复
扫描每一行,记录黑色点的坐标。

500*500大小的图片用GetPixel应该还能忍受。追求效率的话可以用BitmapData对象做。
hellNo 2012-04-20
  • 打赏
  • 举报
回复
自己顶一下!!!

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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