У меня есть 3D-поверхность, представленная с использованием файла wrl. Я прочитал необходимую информацию. из файла и иметь следующие данные: вершины, грани, нормали, координаты текстуры.Преобразование данных 3D поверхности в 2D-диапазон изображения
Как использовать эти данные для преобразования этого изображения в 2D-изображение (что совпадает с изображением нормальной интенсивности, но за исключением того, что каждый пиксель несет значение глубины подстилающей поверхности)? Я предпочитаю решение этой проблемы, одобренное Matlab, хотя общие идеи более чем приветствуются.
Спасибо за ваш ответ, Андер. Я попробовал это сначала (извините, что забыл упомянуть об этом в сообщении). Но важным ограничением в griddata является то, что точки сетки (из meshgrid) должны быть частью 3D-поверхности, из которой мы интерполируем. В моем случае 3D-данные, которые у меня есть, сосредоточены в другом месте (большинство точек x-y отрицательны). Чтобы выполнить это, я пытаюсь внедрить облако 3D-точек, которое у меня (просто переводя), примерно в центр сетки, полученный из meshgrid. Что ты думаешь об этом ? – Swami
@Swami Definetly. Вы должны 1: поместить все ваши данные X-Y в центр с помощью szX/2 szY/2, а затем 2: масштабировать данные, чтобы все вершины находились в диапазоне 1: szX 1: szY (в комплекте). Это, наверное, слишком плохо, я думаю;) –