-5

这是问题所在:

照相机拍摄了I位于白色背景上的一分钱、一角硬币和四分之一硬币的图像,并且硬币不重叠。假设阈值B处理成功创建了一个二进制图像,硬币区域为 1,背景为 0。

d_p给定硬币、d_d和以像素为单位的已知直径d_q(注意d_d < d_p < d_q)。如何使用形态学运算(膨胀、腐蚀、开运算和闭运算)以及逻辑和集合运算(AND、OR、NOT 和集合差)来生成三个二进制输出图像PDQ,其中P应该只包含一分钱,D应该只包含一角钱,Q应该只包含四分之一?

任何人都可以提供代码或一些提示吗?提前致谢!

4

1 回答 1

3

这显然看起来像家庭作业,所以我不会为你编写任何代码,但我会给你一些提示,以推动你朝着正确的方向前进。您描述的情况是高度理想化的,并不反映现实世界的情况……这实际上很棒,因为它使编码更加简单。我将假设这张照片是直接在硬币表面上方拍摄的,而不是在某个角度上拍摄的。

  1. 您已经知道每个硬币的直径,并且因为直径以像素为单位,这使得这个问题变得更加容易。因此,您需要为每个硬币指定三个具有相同直径的圆形结构元素。

  2. 首先对B使用最大的结构元素进行形态学开场,即四分之一。打开是腐蚀,然后是膨胀。关于腐蚀,您应该知道的一件事是,任何小于结构元素的对象都会消失,而那些较大的对象将保留对象中的像素。因此,通过关闭,您将移除一分钱一角,而该季度将完全重建。关于开放的一件好事是,如果您的结构元素小于对象本身,则进行开放应该使对象保持不变,前提是结构元素和对象遵循或多或少相同的特征。因为您的结构元素是圆形的,硬币也是如此,所以我们可以开始了。因此,这是您的第一张图片Q

  3. 接下来,使用第二大结构元素,即便士,并在图像上做一个开口B。现在会发生的是,一角钱应该消失,而四分之一和便士应该仍然存在。因此,在此图像和Q. 我们的结果只是剩下的一角钱,所以这是P.

  4. 最后一毛钱,你实际上甚至不需要做任何形态。做一个逻辑OR运算来组合四分之一Q和便士P得到一个组合图像。B之后,在原始图像和此组合图像之间设置差异。然后,您将隔离一角钱,即 now D


这应该足以让你开始。祝你好运!

于 2014-09-05T06:15:49.553 回答