Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Core dump during automatic reconstruction

Abierto
#4,599 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

@Nikhila-Dhevi-R ya está trabajando en esto.

Desde el 19/10/2026.

  • #4871 de @Nikhila-Dhevi-R — abierto

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
48/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Tranquilo
Stack tecnológico
cpp, linux

Línea de trabajo

Start by tracing the automatic reconstruction image-undistortion path from COLMAPUndistorter::Undistort() to Bitmap::Write(); the crash log identifies OpenImageIO's JPEG output and IPTC encoding as the failure point. Try reproducing with the Gerrard Hall images and the reported setup, then determine whether the failure is specific to an input image or output metadata. Done means automatic reconstruction completes image undistortion without aborting.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Describe the bug
I'm a COLMAP beginner processing the Gerrard Hall images using Automatic Reconstruction. The program core dumped when it started the first image in the the "Image Undistortion" phase. You'll see below that the machine is an old i7, but has a more recent NVidia card and 16GB of RAM.

To Reproduce
Preparation:
Build and install COLMAP by following follow the instructions for Debian/Ubuntu at https://colmap.github.io/install.html

  • My commit is 64805cb870b574a569dccc34918d95a2db2b2fee.
  • It was necessary to run "sudo apt-get update" before the tools and libraries would install properly (suggest update the instructions).

Steps to reproduce the behavior:

  1. Download gerrard-hall.zip and unzip to folder whatever/gerrard-hall
  2. Create folder whatever/gerrard-proj
  3. Start Automatic Reconstruction from the COLMAP gui.
  4. Set the project folder as whatever/gerrard-proj
  5. Set the image folder as whatever/gerrard-hall/images
  6. Change no other options and press Run.

Expected behavior
No core dump.

Screenshots

I20260729 10:29:22.631182 12234 incremental_pipeline.cc:793] Keeping successful reconstruction
I20260729 10:29:22.645833 12234 timer.cc:90] Elapsed time: 6.119 [minutes]
I20260729 10:29:22.766783 12234 automatic_reconstruction.cc:368] === Dense reconstruction ===
I20260729 10:29:22.766952 12234 undistorters.cc:167] === Image undistortion ===
I20260729 10:29:22.769179 12234 undistorters.cc:206] Undistorting image [1/100]
./src/libOpenImageIO/iptc.cpp:167: encode_iptc_iim_one_tag: Assertion 'data != nullptr' failed.
*** Aborted at 1785317382 (unix time) try "date -d @1785317382" if you are using GNU date ***
PC: @                0x0 (unknown)
./src/libOpenImageIO/iptc.cpp:167: encode_iptc_iim_one_tag: Assertion 'data != nullptr' failed.
./src/libOpenImageIO/iptc.cpp:167: encode_iptc_iim_one_tag: Assertion 'data != nullptr' failed.
*** SIGABRT (@0x3e800002ee2) received by PID 12002 (TID 0x7455caffd000) from PID 12002; stack trace: ***
./src/libOpenImageIO/iptc.cpp:167: encode_iptc_iim_one_tag: Assertion 'data != nullptr' failed.
    @     0x74564a95c206 (unknown)
    @     0x74563c445330 (unknown)
    @     0x74563c49eb2c pthread_kill
./src/libOpenImageIO/iptc.cpp:167: encode_iptc_iim_one_tag: Assertion 'data != nullptr' failed.
    @     0x74563c44527e gsignal
    @     0x74563c4288ff abort
    @     0x74563e6a0ef2 (unknown)
    @     0x74563e6a9091 OpenImageIO_v2_4::encode_iptc_iim()
    @     0x74563e75f2d9 OpenImageIO_v2_4::JpgOutput::open()
    @     0x57e7c3b46726 colmap::Bitmap::Write()
./src/libOpenImageIO/iptc.cpp:167: encode_iptc_iim_one_tag: Assertion 'data != nullptr' failed.
    @     0x57e7c2e80c24 colmap::COLMAPUndistorter::Undistort()
    @     0x57e7c2e88e5b _ZNSt17_Function_handlerIFSt10unique_ptrINSt13__future_base12_Result_baseENS2_8_DeleterEEvENS1_12_Task_setterIS0_INS1_7_ResultIbEES3_EZNS1_11_Task_stateISt5_BindIFMN6colmap17COLMAPUndistorterEKFbjEPSD_jEESaIiEFbvEE6_M_runEvEUlvE_bEEE9_M_invokeERKSt9_Any_data
    @     0x57e7c2dc586d std::__future_base::_State_baseV2::_M_do_set()
./src/libOpenImageIO/iptc.cpp:167: encode_iptc_iim_one_tag: Assertion 'data != nullptr' failed.
./src/libOpenImageIO/iptc.cpp:167: encode_iptc_iim_one_tag: Assertion 'data != nullptr' failed.
./src/libOpenImageIO/iptc.cpp:167: encode_iptc_iim_one_tag: Assertion 'data != nullptr' failed.
    @     0x74563c4a1ed3 (unknown)
    @     0x57e7c2e8a09e std::__future_base::_Task_state<>::_M_run()
    @     0x57e7c2e8c1b0 _ZNSt17_Function_handlerIFSt8functionIFvvEEvEZN6colmap10ThreadPool7AddTaskIMNS4_17COLMAPUndistorterEKFbjEJPS7_RKjEEESt13shared_futureINSt13invoke_resultIT_JDpT0_EE4typeEEOSF_DpOSG_EUlvE_E9_M_invokeERKSt9_Any_data
    @     0x57e7c2fb3b7b colmap::ThreadPool::WorkerFunc()
    @     0x74563c8ecdb4 (unknown)
    @     0x74563c49caa4 (unknown)
    @     0x74563c529c6c (unknown)
Aborted (core dumped)

After the abort, the project folder looked like this:

    └── gerrard-proj
        ├── database.db
        ├── dense
        │   └── 0
        │       ├── images
        │       │   ├── IMG_2384.JPG
        │       │   ├── IMG_2385.JPG
        │       │   ├── IMG_2386.JPG
        │       │   ├── IMG_2388.JPG
        │       │   ├── IMG_2389.JPG
        │       │   ├── IMG_2391.JPG
        │       │   ├── IMG_2392.JPG
        │       │   ├── IMG_2393.JPG
        │       │   └── IMG_2394.JPG
        │       ├── sparse
        │       └── stereo
        │           ├── consistency_graphs
        │           ├── depth_maps
        │           └── normal_maps
        └── sparse
            ├── 0
            │   ├── cameras.bin
            │   ├── frames.bin
            │   ├── images.bin
            │   ├── points3D.bin
            │   └── rigs.bin
            └── project.ini

Environment:
$ uname -a
Linux al-ubuntu 6.17.0-19-generic #19~24.04.2-Ubuntu SMP PREEMPT_DYNAMIC Fri Mar 6 23:08:46 UTC 2 x86_64 x86_64 x86_64 GNU/Linux

$ lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Address sizes: 46 bits physical, 48 bits virtual
Byte Order: Little Endian
CPU(s): 12
On-line CPU(s) list: 0-11
Vendor ID: GenuineIntel
Model name: Intel(R) Core(TM) i7-4930K CPU @ 3.40GHz

$ cat /proc/meminfo
MemTotal: 16307056 kB

$ sudo lshw -C display
*-display
description: VGA compatible controller
product: GA107 [GeForce RTX 3050 6GB]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01:00.0
logical name: /dev/fb0
version: a1
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress vga_controller bus_master cap_list rom fb
configuration: depth=32 driver=nvidia latency=0 resolution=1920,1080
resources: irq:61 memory:fa000000-faffffff memory:c0000000-cfffffff memory:d0000000-d1ffffff ioport:e000(size=128) memory:c0000-dffff

$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2023 NVIDIA Corporation
Built on Fri_Jan__6_16:45:21_PST_2023
Cuda compilation tools, release 12.0, V12.0.140
Build cuda_12.0.r12.0/compiler.32267302_0

Lenguaje dominante
C++
Estrellas
12.9k
Forks
2.2k
Merge medio
1 d 2 h
PR fusionados (30 d)
78

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de colmap/colmap

Todos los issues de colmap/colmap

Issues similares

Más issues de C++

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.