Importing ODM generated OBJ textured model in Blender?

Thanks to all contributors for this amazing software!
I’d just fly and compute a drone map. 3D Textured model is very good.
I would like to simulate a camera moving in this model and generate a video that I could include in my own holidays video.
I exported the ODM’s generated model, and imported it in Blender 2.82. Unfortunately, Blender did not import textures… and displayed me a “moon” landscape!
Expected (WebODM View):
Got (Blender 2.82 View):

Does someone have some experience about importing OBJ textured models in Blender or in other software?

I haven’t had any issues importing into blender. You are doing a File:Import:Obj and you have all the texture files extracted?

1 Like

Thanks for your positive answer.
Yes. I tried importing odm_textured_model_geo.obj and odm_textured_model.obj, but got the same result, without any texture.
$ ls -lGgh
total 280M
-rw-r----- 1 494 déc. 29 10:19 odm_textured_model.conf
-rw-r----- 1 78M déc. 29 10:19 odm_textured_model_data_costs.spt
-rw-r----- 1 3,5K déc. 29 10:19 odm_textured_model_geo.mtl
-rw-r----- 1 47M déc. 29 10:19 odm_textured_model_geo.obj
-rw-r----- 1 3,1M déc. 29 10:19 odm_textured_model_labeling.vec
-rw-r----- 1 15M déc. 29 10:19 odm_textured_model_material0000_map_Kd.png
-rw-r----- 1 14M déc. 29 10:19 odm_textured_model_material0001_map_Kd.png
-rw-r----- 1 15M déc. 29 10:19 odm_textured_model_material0002_map_Kd.png
-rw-r----- 1 14M déc. 29 10:19 odm_textured_model_material0003_map_Kd.png
-rw-r----- 1 13M déc. 29 10:19 odm_textured_model_material0004_map_Kd.png
-rw-r----- 1 13M déc. 29 10:19 odm_textured_model_material0005_map_Kd.png
-rw-r----- 1 12M déc. 29 10:19 odm_textured_model_material0006_map_Kd.png
-rw-r----- 1 3,3M déc. 29 10:19 odm_textured_model_material0007_map_Kd.png
-rw-r----- 1 3,3M déc. 29 10:19 odm_textured_model_material0008_map_Kd.png
-rw-r----- 1 3,2M déc. 29 10:19 odm_textured_model_material0009_map_Kd.png
-rw-r----- 1 3,0M déc. 29 10:19 odm_textured_model_material0010_map_Kd.png
-rw-r----- 1 3,0M déc. 29 10:19 odm_textured_model_material0011_map_Kd.png
-rw-r----- 1 915K déc. 29 10:19 odm_textured_model_material0012_map_Kd.png
-rw-r----- 1 910K déc. 29 10:19 odm_textured_model_material0013_map_Kd.png
-rw-r----- 1 896K déc. 29 10:19 odm_textured_model_material0014_map_Kd.png
-rw-r----- 1 898K déc. 29 10:19 odm_textured_model_material0015_map_Kd.png
-rw-r----- 1 886K déc. 29 10:19 odm_textured_model_material0016_map_Kd.png
-rw-r----- 1 846K déc. 29 10:19 odm_textured_model_material0017_map_Kd.png
-rw-r----- 1 258K déc. 29 10:19 odm_textured_model_material0018_map_Kd.png
-rw-r----- 1 250K déc. 29 10:19 odm_textured_model_material0019_map_Kd.png
-rw-r----- 1 246K déc. 29 10:19 odm_textured_model_material0020_map_Kd.png
-rw-r----- 1 255K déc. 29 10:19 odm_textured_model_material0021_map_Kd.png
-rw-r----- 1 250K déc. 29 10:19 odm_textured_model_material0022_map_Kd.png
-rw-r----- 1 245K déc. 29 10:19 odm_textured_model_material0023_map_Kd.png
-rw-r----- 1 251K déc. 29 10:19 odm_textured_model_material0024_map_Kd.png
-rw-r----- 1 66K déc. 29 10:19 odm_textured_model_material0025_map_Kd.png
-rw-r----- 1 73K déc. 29 10:19 odm_textured_model_material0026_map_Kd.png
-rw-r----- 1 65K déc. 29 10:19 odm_textured_model_material0027_map_Kd.png
-rw-r----- 1 74K déc. 29 10:19 odm_textured_model_material0028_map_Kd.png
-rw-r----- 1 27K déc. 29 10:19 odm_textured_model_material0029_map_Kd.png
-rw-r----- 1 5,7K déc. 29 10:19 odm_textured_model.mtl
-rw-r----- 1 39M déc. 29 10:19 odm_textured_model.obj

MTL file contains only relative path… so it should be OK:

$ head odm_textured_model.mtl
newmtl material0000
Ka 1.000000 1.000000 1.000000
Kd 1.000000 1.000000 1.000000
Ks 0.000000 0.000000 0.000000
Tr 0.000000
illum 1
Ns 1.000000
map_Kd odm_textured_model_material0000_map_Kd.png
newmtl material0001
Ka 1.000000 1.000000 1.000000

Model sent via private mail.

1 Like

What a fantastic dataset. It looks like it works fine:

Make sure to click on the “Viewport Shading” button:

It’s this button here:

And you may want to scale the model and add a Sun as a lighting source.

Good luck and let us know how it goes!


Thank you very much… It works fine for me now!


This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.

I have tried importing the obj file from WebODM into blender but it does not show up at all. However I can import it successfully into MeshLab. What am I doing wrong?

Did you click the viewport shading option? By default, the textures will be there but not shown unless you switch to viewport shading.

1 Like

I did. I also imported the OBJ file through the file import path. Blender Screen Shot

Currently my screen shows nothing.Blender Screen Shot2

1 Like

Ahh, zoom way out. It’s there, but it’s a big model. Also, you might need to rotate it 90 degrees back to normal (you an avoid that step if you check on import, there’s a setting which automatically rotates obj models by 90 degrees for compatibility with some common obj version).

1 Like

When I zoom out I just see endless grey. Blender Zoom Out

Take a look at the zoom-to-selected comments here: How do I zoom onto an object properly? - #6 by Fweeb - Basics & Interface - Blender Artists Community

Just make sure your object is selected by selecting it in the right-hand panel first.

1 Like

I have tried doing all of those recommendations and I still cannot get it to work.

Can you send me your model with all the associated textures?

1 Like

I just messaged you a google drive link.

Huh. I can’t get it to display either. I wonder if Piero has any insights. We did recently change how these are produced to improve the georeferencing process and fully leverage portions of how OpenSfM handles georeferencing. It is possible that the changes weren’t compatible with how blender reads OBJ.

1 Like