Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何检测图像中的透明区域?_Ios_Objective C_Image - Fatal编程技术网

Ios 如何检测图像中的透明区域?

Ios 如何检测图像中的透明区域?,ios,objective-c,image,Ios,Objective C,Image,我研究了如何在iphone中将许多图像合并成一个图像。但是我有一些问题。我想检测透明区域,它有一个白色的背景。我认为在这个过程中,有可能在这个区域周围得到一个CGRect矩形,之后我会将我的图像拖到透明区域,但我不知道如何识别它。所以,如果我在这张图像中检测到所有的透明区域,我将有一个CGRect数组 您可以看到我的图像: 请帮帮我,非常感谢 在检测透明像素方面,您可以按照中所述访问像素缓冲区,然后在像素缓冲区中迭代,查找通道值小于1.0的alpha像素 但是,从这一点出发,以编程的方式构建一

我研究了如何在iphone中将许多图像合并成一个图像。但是我有一些问题。我想检测透明区域,它有一个白色的背景。我认为在这个过程中,有可能在这个区域周围得到一个CGRect矩形,之后我会将我的图像拖到透明区域,但我不知道如何识别它。所以,如果我在这张图像中检测到所有的透明区域,我将有一个CGRect数组

您可以看到我的图像:


请帮帮我,非常感谢

在检测透明像素方面,您可以按照中所述访问像素缓冲区,然后在像素缓冲区中迭代,查找通道值小于1.0的
alpha
像素

但是,从这一点出发,以编程的方式构建一个对应于连续透明像素的
CGRect
数组是非常重要的。如果对透明区域(例如圆形)的性质进行简化假设,这是一个相当容易处理的小问题,尽管与许多圆形相交的薄圆形矩形会使问题复杂化


但是,如果您的透明区域图像是预定义的,我可能会手动定义它们,而不是通过编程来确定。

谢谢Rob!然而在我的例子中,我有很多图像需要检测。因此,当我手动检测时,我认为它会损失很多时间。这是一个应用程序,您可以看到如何将图像合并到其他图像中的透明图像@好吧,然后用编程的方式来做。没那么糟。我建议您首先掌握像素缓冲区检索和透明像素的检测,然后在熟悉这些基础知识后再处理
CGRect
检测算法。