检测图像中的边界

时间:2011-06-08 22:19:03

标签: image-processing

我正在为移动设备编写一个游戏,该游戏在背景上显示一系列彩球。 如果用户触摸球,我想缩放它们并显示消息。

由于球的数量和大小是随意的,我试图用球填充区域,并使边界矩形传递到缩放功能。

只有当用户偶然没有触球或在封闭的路径内时,这才有效...

以下是我的问题的图形表示:

*,深色背景

空格,浅色背景

+,是球

*********************************

***                           ***

***                           ***

***                           ***

***   +    +  + ++    ++      ***

*** +     +     ++   +   +    ***

***   +    +    + +  +    +   ***

*** +        +     + +   +    ***

***        +    +  + ++       ***

*** +     +     ++   +   +    ***

***                           *** 

*********************************

我想知道包含所有球的矩形的坐标。

有什么建议吗?

谢谢, PMC

2 个答案:

答案 0 :(得分:0)

可以通过简单的最小和最大计算来计算存储所有球的矩形。您只需在两个坐标中找到(位置 - 半径)和(位置+半径)的最小值。当然,这假设球是由你绘制的,或者至少它们的坐标是已知的。否则,这是一个计算机视觉问题,尽管是一个简单的问题,因为移动设备没有如此大的屏幕来使像素扫描完全不可行。

答案 1 :(得分:0)

说你的起源位于左下角。正x是向右,正y是向上。

你的左边界将是(x_i - r_i)的最小值,其中x_i是球i的x坐标,r是球i的半径。

您的右边界将是(x_i + r_i)的最大值。

您的底部边界将是(y_i - r_i)的最小值。

您的上边界将是(y_i + r_i)的最大值。