Openmvg: While running SfM_SequentialPipeline.py or SfM_GlobalPipeline.py smf_data.bin and robust.bin files not being created.

Created on 17 May 2016  ·  5Comments  ·  Source: openMVG/openMVG

Hello, I'm a bit new at this and have tried to run SfM_SequentialPipeline.py and SfM_GlobalPipeline.py on a fresh install and both fail to create smf_data.bin and robust.bin. The following errors come up.

There is no defined intrinsic data in order to compute an essential matrix for the initial pair.

  1. Colorize Structure

The input SfM_Data file "/home/user/Pictures/MVGProject/reconstruction_sequential/sfm_data.bin" cannot be read.

  1. Structure from Known Poses (robust triangulation)
    Compute Structure from the provided poses

The input SfM_Data file "/home/user/Pictures/MVGProject/reconstruction_sequential/sfm_data.bin" cannot be read.

The input SfM_Data file "/home/user/Pictures/MVGProject/reconstruction_sequential/robust.bin" cannot be read.

Is there a way I can find out what's causing this? I need the .bin files for use in openMVS.

Most helpful comment

The camera of the input images does not exist in the file "sensor_width_camera_database.txt". There are two ways to resolve the problem:

  1. add option focal length like this :
    pIntrisics = subprocess.Popen( [os.path.join(OPENMVG_SFM_BIN, "openMVG_main_SfMInit_ImageListing"), "-i", input_dir, "-o", matches_dir, "-d", camera_file_params], "-f", "3500");
  2. add the camera info to the camera db file:sensor_width_camera_database.txt;

All 5 comments

The camera of the input images does not exist in the file "sensor_width_camera_database.txt". There are two ways to resolve the problem:

  1. add option focal length like this :
    pIntrisics = subprocess.Popen( [os.path.join(OPENMVG_SFM_BIN, "openMVG_main_SfMInit_ImageListing"), "-i", input_dir, "-o", matches_dir, "-d", camera_file_params], "-f", "3500");
  2. add the camera info to the camera db file:sensor_width_camera_database.txt;

Thanks for the quick reply!
Your explanation was very helpful. I ended up adding exif data to my files with exiftool as they did not have any model or focal length information.
I am using these as more of a test of concept than as an actual project, but in the future it'll likely be useful to add the camera sensor info to the "sensor_width_camera_database.txt" file as you mentioned in your comment above.
@whuaegeanse

I close the issue, since the solution was provided by the community.

There is no defined intrinsic data in order to compute an essential matrix for the initial pair
这个问题是因为图片的属性里没有带相机的参数,后来用官网下载的带相机参数的图片后,这个问题就好了。

https://github.com/openMVG/openMVG/issues/559#issuecomment-219625095

The camera of the input images does not exist in the file "sensor_width_camera_database.txt". There are two ways to resolve the problem:

  1. add option focal length like this :
    pIntrisics = subprocess.Popen( [os.path.join(OPENMVG_SFM_BIN, "openMVG_main_SfMInit_ImageListing"), "-i", input_dir, "-o", matches_dir, "-d", camera_file_params], "-f", "3500");
  2. add the camera info to the camera db file:sensor_width_camera_database.txt;

I think first there is a minor typo.
pIntrisics = subprocess.Popen( [os.path.join(OPENMVG_SFM_BIN, "openMVG_main_SfMInit_ImageListing"), "-i", input_dir, "-o", matches_dir, "-d", camera_file_params, "-f", "3500"])
this is right one.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

rttgnck picture rttgnck  ·  6Comments

whuaegeanse picture whuaegeanse  ·  7Comments

tw0023 picture tw0023  ·  5Comments

MaXL130 picture MaXL130  ·  7Comments

glbsalazar picture glbsalazar  ·  7Comments