Agisoft Metashape
Agisoft Metashape => Python and Java API => Topic started by: chehroma on September 08, 2020, 10:41:17 AM
-
Добрый день. Использую скрипт, который нашел в одной из тем. Но есть один нюанс: конечное изображение почему то всегда получается под разным углом (примеры http://prntscr.com/udgmvp http://prntscr.com/udgn6z). Как подправить скрипт, что бы виртуальная камера постоянно смотрела на центр области реконструкции (как то так http://prntscr.com/udgpg7). Буду очень благодарен за помощь.
import Metashape
chunk = Metashape.app.document.chunk
T = chunk.crs.localframe(chunk.transform.translation) * chunk.transform.matrix
location = chunk.region.center + chunk.region.rot * chunk.region.size
direction = (chunk.region.center - location).normalized()
vertical = T.inv().mulv(Metashape.Vector([0, 0, 1]))
horizontal = Metashape.Vector.cross(direction, vertical).normalized()
vertical = Metashape.Vector.cross(direction, horizontal).normalized()
R = Metashape.Matrix([horizontal, vertical, direction])
cameraT = Metashape.Matrix().Translation(location) * Metashape.Matrix().Rotation(R.t())
image = chunk.model.renderImage(cameraT, chunk.sensors[0].calibration)
image.save("c://Work//render2.jpg")
-
Добрый день,
Данный скрипт должен создавать рендер модели с видом из одного из углов области реконструкции на её центр.
Уточните, пожалуйста, с какой точки Вы хотите рендерить вид модели? Например, с центра какой-либо грани?
-
Добрый день,
Данный скрипт должен создавать рендер модели с видом из одного из углов области реконструкции на её центр.
Уточните, пожалуйста, с какой точки Вы хотите рендерить вид модели? Например, с центра какой-либо грани?
Если взять область реконструкции, на ней есть крестик, так нужно напротив (см. скриншот http://prntscr.com/uzv4wn). Спасибо.