Crash during reconstruction when creating cubes
Closed this issue · 2 comments
Hi,
First of all, thank you very much for providing the code for Points2Poly!
I have been trying to use your work in a docker environment but have systematic crashes when trying to use the reconstruction script on the Helsinki dataset.
Here is the error I get
Traceback (most recent call last):
File "reconstruct.py", line 51, in reconstruct_full
cell_complex = create_cell_complex(filepath,
File "/app/utils.py", line 65, in create_cell_complex
cell_complex = CellComplex(vertex_group.planes, vertex_group.aabbs, vertex_group.obbs, vertex_group.points_grouped,
File "/home/appuser/.local/lib/python3.8/site-packages/abspy/complex.py", line 83, in __init__
self.cells = [self._construct_initial_cell()] # list of QQ
File "/home/appuser/.local/lib/python3.8/site-packages/abspy/complex.py", line 105, in _construct_initial_cell
return polytopes.cube(intervals=[[QQ(self.initial_bound[0][i]), QQ(self.initial_bound[1][i])] for i in range(3)])
TypeError: cube() got an unexpected keyword argument 'intervals'
It seems to be correlated with sagemath, but I am not familiar with this lib, and the documentation still mentions the "intervals" keyword, so I guess the real issue maybe elsewhere. Do you have any hints regarding this error?
Thanks a lot!
For reproducibility, I show the dockerfile and the list of instructions done hereafter.
Dockerfile:
FROM nvidia/cuda:11.3.1-devel-ubuntu20.04
ENV DEBIAN_FRONTEND noninteractive
WORKDIR /app
COPY . /app
RUN apt-get -y update \
&& apt-get install -y software-properties-common \
&& apt-get -y update \
&& add-apt-repository universe
RUN apt-get -y update
RUN apt-get -y install nano git python3 python3-pip wget libgl1-mesa-glx libegl1-mesa libxrandr2 libxrandr2 libxss1 libxcursor1 libxcomposite1 libasound2 libxi6 libxtst6 curl sagemath
RUN adduser -u 5678 --disabled-password --gecos "" appuser && chown -R appuser /app
USER appuser
CMD ["python3", "main.py"]
List of commands once the docker is launched:
pip install ./abspy
pip install -r points2surf/requirements.txt
pip install -r requirements.txt
python download.py dataset_name='helsinki_mini' model_name='helsinki_fullview'
python reconstruct.py dataset_name='helsinki_mini' model_name='helsinki_fullview'
Hi @sguinard, thanks for the detailed post. It seems most likely you had the latest version of SageMath installed via RUN apt-get -y install ... sagemath
, while the repo was built on sage=10.0
. Please follow this instruction to install sage=10.0
. Let me know if that helps.
Hi @chenzhaiyu, thanks a lot for the quick answer! That was the point I was missing. It works fine now!