ну на самом деле желаемая цель не так легко достичь. Прежде всего вам понадобится хороший способ выяснить, что есть что и что находится на вашем изображении. И просто не существует простого «алгоритма» для обнаружения домов / автомобилей / чего бы то ни было на изображении. Существуют способы сегментировать различные объекты (например, автомобили) из изображения, но в целом они не работают. Особенно в домах это будет сложно, так как каждый дом выглядит по-разному, и трудно найти одно точное измерение для «это дом, а это не так» ...
Я правильно понимаю, что вы пытаетесь просто сфотографировать дом (с двором) и построить из него текстурированную 3D-модель? Это не сработает, так как вам нужно несколько фотографий дома, чтобы определить положение стен / углов и всего в трехмерном пространстве (есть подходы, которые пытаются реконструировать сетку только с одним изображением, но им не хватает информации о глубине и результаты довольно плохие ). Так что если вы хотите создать 3D-mdoels, вам понадобится несколько фотографий разных углов дома.
Есть несколько различных подходов, которые используют этот вид техники для восстановления объектов реального мира в треугольные сетки.
В основном они работают по принципу:
- Попробуйте найти точки на изображениях с различной точкой обзора, которые одинаковы на объекте. Учитывая, что вы фотографируете дом, это могут быть характерные конструкции, такие как углы окон / дверей или углы или края на стенах / крыше /...
- Зная, где одна и та же точка вашего дома находится на нескольких разных фотографиях, и зная положение камеры обеих фотографий, вы можете восстановить эту точку в 3D-пространстве.
- Выполнение этого для множества равных точек "даст вам возможность" реконструировать форму вашего дома в виде 3D-модели путем триангуляции точек.
- Использование частей изображения в качестве текстур и отображение их в сгенерированной модели также будет работать, поскольку вы знаете, где это.
Вы должны взглянуть на эти документы:
http://www.graphicon.ru/1999/3D%20Reconstruction/Valiev.pdf
http://people.csail.mit.edu/wojciech/pubs/LabeledRec.pdf
http://people.csail.mit.edu/sparis/publi/2006/oceans/Paris_06_3D_Reconstruction.ppt
Во второй статье даже есть пример выполнения именно того, чего вы пытаетесь достичь , а именно реконструкция текстурированной 3D-модели дома, сфотографированного под разными углами.
Третья ссылка представляет собой презентацию PowerPoint, которая показывает, как работает реконструкция, и показывает недостатки.
Так что вам следует ознакомиться с этими статьями, чтобы узнать, с какими проблемами вы столкнулись ... Если вы хотите попробовать это самостоятельно, взгляните на OpenCV. Эта библиотека предоставляет несколько методов для извлечения объектов из изображений. Затем вы можете попытаться найти характерные точки на каждом изображении и попытаться сопоставить их.
Удачи в вашем проекте ... Если у вас есть проблемы, пожалуйста, продолжайте спрашивать!