添加obj转换osgb

This commit is contained in:
龙澳 2025-01-20 21:05:13 +08:00
parent 643062a4a2
commit cc7a1456e0
3 changed files with 26 additions and 2 deletions

View File

@ -325,7 +325,7 @@ if __name__ == "__main__":
grid_overlap=0.05, grid_overlap=0.05,
mode="快拼模式", mode="重建模式",
produce_dem=False, produce_dem=False,
) )

View File

@ -309,7 +309,7 @@ if __name__ == "__main__":
grid_overlap=0.05, grid_overlap=0.05,
mode="快拼模式", mode="重建模式",
produce_dem=False, produce_dem=False,
) )

View File

@ -6,6 +6,7 @@ import pandas as pd
import shutil import shutil
import time import time
import cv2 import cv2
import subprocess
class MergeObj: class MergeObj:
@ -301,6 +302,17 @@ class MergeObj:
os.path.join(self.output_dir, "texturing")) os.path.join(self.output_dir, "texturing"))
os.rename(os.path.join(self.output_dir, "texturing", "odm_textured_model_geo.obj"), os.rename(os.path.join(self.output_dir, "texturing", "odm_textured_model_geo.obj"),
os.path.join(self.output_dir, "texturing", "textured_model.obj")) os.path.join(self.output_dir, "texturing", "textured_model.obj"))
self.logger.info(f"开始执行格式转换")
docker_command = (
f"docker run --rm -it "
f"-v {self.output_dir}/texturing:/data "
f"-e LD_LIBRARY_PATH=/opt/osg/build/lib:$LD_LIBRARY_PATH "
f"osg-ubuntu2004 osgconv /data/textured_model.obj /data/textured_model.osgb"
)
self.logger.info(docker_command)
subprocess.run(
docker_command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
self.logger.info(f"格式转换完成")
return return
try: try:
@ -414,6 +426,18 @@ class MergeObj:
f"- 纹理文件: {len(os.listdir(output_model_dir)) - 2}" f"- 纹理文件: {len(os.listdir(output_model_dir)) - 2}"
) )
self.logger.info(f"开始执行格式转换")
docker_command = (
f"docker run --rm -it "
f"-v {self.output_model_dir}:/data "
f"-e LD_LIBRARY_PATH=/opt/osg/build/lib:$LD_LIBRARY_PATH "
f"osg-ubuntu2004 osgconv /data/textured_model.obj /data/textured_model.osgb"
)
self.logger.info(docker_command)
subprocess.run(
docker_command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
self.logger.info(f"格式转换完成")
except Exception as e: except Exception as e:
self.logger.error(f"合并过程中发生错误: {str(e)}", exc_info=True) self.logger.error(f"合并过程中发生错误: {str(e)}", exc_info=True)
raise raise