如何根据透明区域分割图像
How to split an image based on transparent areas
我已经在互联网上彻底搜索了,但找不到解决方案
这是我想要的
这是我的头像
这是我选择后透明度为 0 时的样子
所以我想以编程方式将图像分成 6 块。每一个包含一个鸡蛋,剩下0个透明区域
我该怎么做?
我的首选解决方案基于 c# 或 photoshop 脚本,但我对所有解决方案持开放态度
示例输出
要解决任何图像大小、鸡蛋大小、方向、位置、计数的问题,我建议使用以下方法:
加载图像文件。
提取 alpha 通道(这包含透明度信息)
找到鸡蛋斑点(斑点 search/analysis、区域标记、连通分量、此方法的无数名称)
获取那些斑点的边界框
使用这些边界框裁剪子图像
这可以通过大多数图像处理库来实现。如果您更喜欢 C#,请尝试 EmguCV。或使用网络搜索查找其他人。
http://www.emgu.com/wiki/files/3.1.0/document/html/e13fa7a9-5eee-b46c-4b65-ff3e7e427719.htm
我已经在互联网上彻底搜索了,但找不到解决方案
这是我想要的
这是我的头像
这是我选择后透明度为 0 时的样子
所以我想以编程方式将图像分成 6 块。每一个包含一个鸡蛋,剩下0个透明区域
我该怎么做?
我的首选解决方案基于 c# 或 photoshop 脚本,但我对所有解决方案持开放态度
示例输出
要解决任何图像大小、鸡蛋大小、方向、位置、计数的问题,我建议使用以下方法:
加载图像文件。
提取 alpha 通道(这包含透明度信息)
找到鸡蛋斑点(斑点 search/analysis、区域标记、连通分量、此方法的无数名称)
获取那些斑点的边界框
使用这些边界框裁剪子图像
这可以通过大多数图像处理库来实现。如果您更喜欢 C#,请尝试 EmguCV。或使用网络搜索查找其他人。
http://www.emgu.com/wiki/files/3.1.0/document/html/e13fa7a9-5eee-b46c-4b65-ff3e7e427719.htm