读书人

在256色BMP找其中某一种颜色的边缘有

发布时间: 2012-01-19 00:22:28 作者: rapoo

在256色BMP找其中某一种颜色的边缘,有好算法吗?
定给分

[解决办法]
扫描这张图上的具有该颜色的每个象素,如果这个象素周围8个相邻象素有不同颜色,那么就标记这个象素为边缘象素。
[解决办法]
楼上正解.
不过这个容差范围,lz可以自定义.
[解决办法]
扫描就可以了吧
[解决办法]
扫描整张图片上的像素,若些像素是你要的那个像素,再拿出它的边缘,
边界像素不一定有八个方向哦
[解决办法]
你可以先将图像变换为灰度图(Y=1.0000R+4.5907G+0.0601B),然后获取整幅图像(而不是物体)的边缘灰度值,接着从图像的四边(假设你的图像是个标准的矩形)向中心逼近逐行逐列判断本行本列像素点的灰度值与前一行前一列或前几行前几列的平均灰度值之差是否达到足以将次行次列判定为边缘,随后将大于这个差值的像素点标记,并且停止这个像素点到中心的逼近(但是其他没有被标记的像素点到中心的方向仍然要逼近,直到这个方向的某个像素点被标记),这样的话,不管物体有没有空洞,边缘照样提取得出来。
在以上算法思想中,从四边向中心逼近是一个技巧,差值的选定是一个关键,对已判断的像素点做标记并停止逼近是一个技巧。

[解决办法]
看不懂问题是什么意思,不知道查找出图片边框有什么问题。。。
不过把图片转换成数组处理肯定比直接GetPixel快n倍
[解决办法]
是不是像魔棒的算法啊?种子填充算法一样的,是否可以理解为正解。如果是那,把图片转为数组,速度很快的啊。

读书人网 >VC/MFC

热点推荐