Что вы пытаетесь сделать, это очень, очень трудной задачей. По крайней мере, если вы хотите, чтобы это работало с произвольными формами.
Это по простой причине: компьютер не работает, как мозг человека. Давайте, например, посмотрим на эту верхнюю правую картинку. Что ты видишь? Коробка? Или это плоская прямоугольная форма с двумя параллелограммами, прикрепленными сверху и слева?
Наш мозг видит трехмерную форму, потому что мы живем в трехмерном мире, и большинство вещей, которые мы видим, являются трехмерными, и наша эволюция привела к образованию нейронных структур, которые легко опираются на восприятие таких.
Но есть еще более фундаментальная проблема: сегментация изображения. Вам нужно отделить части изображения до смежных областей. В нашем распознавании формы мозга, реконструкции и сегментации взаимосвязаны, и это происходит в итеративном процессе. Вы, наверное, испытали это несколько раз: вы видели какую-то фигуру, но сначала не могли понять, что это такое. И ваш ум мчался с огромным количеством предметов и форм, которые могут быть тем, что вы видите. И затем через несколько минут вы четко видите форму. Но не потому, что вы, наконец, поняли это только из картины, а потому, что мозг усилил сенсорный вклад с его существующим знанием мира.
Задача вы просите прикосновений не только компьютерное зрение, но и машинного обучения и распознавания.