Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.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
C# 如何基于透明区域分割图像_C#_Image Processing_Transparency_Photoshop - Fatal编程技术网

C# 如何基于透明区域分割图像

C# 如何基于透明区域分割图像,c#,image-processing,transparency,photoshop,C#,Image Processing,Transparency,Photoshop,我已经在网上彻底搜索过了,但找不到解决办法 这是我想要的 这是我的形象 这是当我选择0透明度时它的外观 所以,我想通过编程将图像分割成6个部分。每一个包含一个鸡蛋,剩下0个透明区域 我该怎么做 我的首选解决方案基于c#或photoshop脚本,但我对所有解决方案都持开放态度 示例输出 要解决任何图像大小、鸡蛋大小、方向、位置、计数的问题,我建议使用以下方法: 加载图像文件 提取alpha通道(其中包含透明度信息) 查找鸡蛋斑点(斑点搜索/分析、区域标签、连接的组件、此方法的无数名称) 获取

我已经在网上彻底搜索过了,但找不到解决办法

这是我想要的

这是我的形象

这是当我选择0透明度时它的外观

所以,我想通过编程将图像分割成6个部分。每一个包含一个鸡蛋,剩下0个透明区域

我该怎么做

我的首选解决方案基于c#或photoshop脚本,但我对所有解决方案都持开放态度

示例输出


要解决任何图像大小、鸡蛋大小、方向、位置、计数的问题,我建议使用以下方法:

加载图像文件

提取alpha通道(其中包含透明度信息)

查找鸡蛋斑点(斑点搜索/分析、区域标签、连接的组件、此方法的无数名称)

获取这些斑点的边界框

使用这些边界框裁剪子图像

这可以通过大多数图像处理库实现。如果你喜欢C#,试试看。或者使用websearch查找其他用户


如果需要0个透明区域,如何替换该区域?背景颜色?@小猪不,把它去掉。结果将是只有没有透明区域的鸡蛋。我是说额外的面积。我已经更新了这个问题,我问自己这是不是你可以在Photoshop中做的事情,或者如果数量太高,这些图像的来源无法提供你需要的图像。。。但是,如果你坚持自动这么做,你应该说明你是否知道鸡蛋的排列和大小,或者这是否会改变。这将影响解决此问题的方法选择。请找到解决方案:@piegrape我必须以编程方式执行此操作。此外,我相信可以找到一个解决方案,而不依赖于图像的大小或图像的形状。我想我可以为此编写一个解决方案,但是如果已经存在一个解决方案,我没有时间这么做。感谢方向,我已经解决了这个问题。编码不到30分钟>