我正在开发一个我有图像的应用程序,我想检测所有不同的图像层。例如,假设我有一个建筑物的内部图像,其中包含墙壁,沙发,地毯,椅子,床等。现在我想检测不同层次的图像,如沙发,床,椅子,墙壁等,以便我可以单独着色。
请帮帮我。
答案 0 :(得分:3)
为此,你将不得不深入研究图像处理:
一个不错的图像处理库:GPUImage from BradLarson
您必须了解边缘检测并从该检测中获得分数。
一旦得到这些点,就必须将边缘分成单独的闭合形状。为此,你必须学习凸形和凹形的实现策略。
在图像上检测到某些形状后,您可以对形状中包含的图像的基础区域执行颜色更改。
但是,作为提醒,这只会产生近似输出,因为图像中的对象可能处于各种光照条件下,因此边缘检测可能无法捕获对象的真实边界。
答案 1 :(得分:2)
你没有。编写软件以检测照片/图像中的“椅子”与“桌子”是不可能的。它不是关于图层,图像中只有像素。你可以写一个像Photoshops魔术棒这样的工具,它可以选择彼此靠近的颜色。但是,它实际上并不是真正以任何自动化方式工作,因为计算机无法根据您的思维方式“看到”主席的方式做出决策。