Odm: рд╡реАрдбрд┐рдпреЛ рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдирд╣реАрдВ рдЪрд▓рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛

рдХреЛ рдирд┐рд░реНрдорд┐рдд 15 рдордИ 2017  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: OpenDroneMap/ODM

рдирдорд╕реНрддреЗред рд╡рд░реНрддрдорд╛рди рдЬреАрдЖрдИрдЯреА рд╕реНрдиреИрдкрд╢реЙрдЯ рдХреЗ рд▓рд┐рдП рд╡реАрдбрд┐рдпреЛ рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИред рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдорд╣рд▓ рд╡реАрдбрд┐рдпреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ред Docker рдХреЗ рдЕрдВрджрд░ ODM рдЪрд▓ рд░рд╣рд╛ рд╣реИ, Dockerfile рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдИ рдЧрдИ рдЫрд╡рд┐:

FROM ubuntu
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update && apt-get remove libdc1394-22-dev \
     && apt-get install -y --install-recommends sudo build-essential cmake \
     python-pip libgdal-dev libgeotiff-dev pkg-config libgtk2.0-dev \
     libavcodec-dev libavformat-dev libswscale-dev python-dev python-numpy \
     libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev \
     libflann-dev libproj-dev libxext-dev liblapack-dev libeigen3-dev \
     libvtk5-dev python-networkx libgoogle-glog-dev libsuitesparse-dev \
     libboost-filesystem-dev libboost-iostreams-dev libboost-regex-dev \
     libboost-python-dev libboost-date-time-dev libboost-thread-dev \
     python-empy python-nose python-pyside python-pyexiv2 python-scipy jhead \
     liblas-bin libglew-dev python-catkin-pkg catkin libgmp-dev libgmp3-dev \
     libmpfr-dev libmpfrc++-dev vim-nox \
     && apt-get autoremove && apt-get clean
RUN useradd -m -U odm
RUN mkdir /code
WORKDIR /code
RUN git clone https://github.com/OpenDroneMap/OpenDroneMap.git .
RUN git submodule init && git submodule update
RUN wget -c http://launchpadlibrarian.net/165141962/libeigen3-dev_3.2.0-8_all.deb && dpkg -i libeigen3-dev_3.2.0-8_all.deb && rm -f libeigen3-dev_3.2.0-8_all.deb
RUN cd SuperBuild && cmake -DODM_BUILD_SLAM=ON . && make
RUN bash ./configure.sh install && \
    cd build && cmake -DODM_BULID_SLAM=ON .. && make && cd .. && \
    chown -R odm:odm /code
USER odm
ENV PYTHONPATH=${PYTHONPATH}:/code/SuperBuild/install/lib/python2.7/dist-packages:/code/SuperBuild/src/opensfm \
    LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/code/SuperBuild/install/lib
VOLUME ["/images"]
ENTRYPOINT ["python", "/code/run.py", "--project-path", "/images"]

рдпрд╣ рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЬрдм рдореИрдВ рд╡реАрдбрд┐рдпреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рддреЛ рдореБрдЭреЗ рдЕрдЧрд▓рд╛ рдорд┐рд▓реЗрдЧрд╛:

docker run -t -i --entrypoint=/bin/bash -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix -v /home/prapor/Downloads:/code/video opendronemap
odm<strong i="9">@53e1ad7fbae3</strong>:/code$ RUNPATH="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
odm<strong i="10">@53e1ad7fbae3</strong>:/code$ export PYTHONPATH=$RUNPATH/SuperBuild/install/lib/python2.7/dist-packages:$RUNPATH/SuperBuild/src/opensfm:$PYTHONPATH
odm<strong i="11">@53e1ad7fbae3</strong>:/code$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$RUNPATH/SuperBuild/install/lib
odm<strong i="12">@53e1ad7fbae3</strong>:/code$ python modules/odm_slam/src/calibrate_video.py --visual 
./video/output/test1/chessboard.mp4 
kept    current chessboard found
34      1107    True              
RMS: 0.881957891046

# Camera calibration and distortion parameters (OpenCV)
Camera.fx: 1512.91332401
Camera.fy: 1512.04223185
Camera.cx: 956.585155225
Camera.cy: 527.321715394

Camera.k1: 0.140581949184
Camera.k2: -0.292250537695
Camera.p1: 0.000188785464717
Camera.p2: 0.000611510377372
Camera.k3: 0.181424769625
odm<strong i="13">@53e1ad7fbae3</strong>:/code$ python run.py --project-path ./video/output --video castle_video.mp4 --slam-config config.yaml --resize-to 1280 test1
[INFO]    Initializing OpenDroneMap app - Mon May 15 13:16:24  2017
Traceback (most recent call last):
  File "run.py", line 39, in <module>
    app = ODMApp(args=args)
  File "/code/scripts/odm_app.py", line 26, in __init__
    ecto.BlackBox.__init__(self, *args, **kwargs)
  File "/code/SuperBuild/install/lib/python2.7/dist-packages/ecto/blackbox.py", line 259, in __init__
    self.__connect()
  File "/code/SuperBuild/install/lib/python2.7/dist-packages/ecto/blackbox.py", line 284, in __connect
    raise BlackBoxError('Got error "%s" when calling connections on "%s"' % (str(e), str(self)))
ecto.blackbox.BlackBoxError: Got error "global name '_p' is not defined" when calling connections on "<scripts.odm_app.ODMApp object at 0x7f2689801c50>"

config.yaml chessboard.mp4 рдФрд░ Castle_video.mp4 рдХреЗ рд╕рдорд╛рди рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╣реИ, chessboard рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рд╕рдорд╛рди рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╛рдБрдЪ рдХреА рдЬрд╛рддреА рд╣реИред рдХреНрдпрд╛ рдХреЛрдИ рдХрд╣ рд╕рдХрддрд╛ рд╣реИ, рдХрд┐ рдореИрдВ рдХреНрдпрд╛ рдЧрд▓рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдБ?

рд╕рднреА 5 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдирдорд╕реНрддреЗ,
рдореИрдВрдиреЗ рд╡рд╣реА рддреНрд░реБрдЯрд┐ рдХреА рд╣реИред рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдореИрдВ Ubuntu 16.04 64 рдмрд┐рдЯреНрд╕ рдкрд░ рдЪрд▓ рд░рд╣рд╛ рд╣реВрдВ, рдФрд░ ODM рдХреБрдЫ рдореБрджреНрджреЛрдВ рдХреЛ Eigen 3.3 рдХреЗ рд╕рд╛рде рдареАрдХ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж ORB_SLAM рдХреЗ рд╕рд╛рде рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (3.2 рдкрд░ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХрд┐рдпрд╛ рдЧрдпрд╛)
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЗрдирдкреБрдЯ рд╡реАрдбрд┐рдпреЛ рдФрд░ yaml config рдлрд╛рдЗрд▓ рдХреЛ / рдкреНрд░реЛрдЬреЗрдХреНрдЯ / рдкрде рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рдлрд┐рд░ рднреА рдореБрдЭреЗ рд╡рд╣реА рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИред

рдХреЛрдИ рд╕рдВрдХреЗрдд?

рдореИрдВ SLAM рдХреЛ рдлрд┐рд░ рд╕реЗ рдХрд╛рдо рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЪреИрдВрдкрд┐рдпрди рдХреА рддрд▓рд╛рд╢ рдореЗрдВ рд╣реВрдВ

рд╕рдорд╕реНрдпрд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдЧ рдкрд░ рд╣реИ \ _

рд╣рдордиреЗ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ ODM рдХреЗ рд╡реАрдбрд┐рдпреЛ рднрд╛рдЧреЛрдВ рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рд╣реИ ... @pierotofy рдХреЗ рд╕рд╛рде рдкреБрд╖реНрдЯрд┐ рдХрд░рдирд╛ рдФрд░ рдЗрд╕ рдмреАрдЪ рдмрдВрдж рдХрд░рдирд╛ред

рдкреБрд╖реНрдЯрд┐ рдХрд░реЗрдВ, SLAM рд╕рдорд░реНрдерди рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рдЕрднреА рднреА рд╡реАрдбрд┐рдпреЛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдПрдХ рдпреЛрдЧрджрд╛рди рдХреЗ рдмрд┐рдирд╛ рдпрд╣ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИ)ред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

linusmartensson picture linusmartensson  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

thomas-bamford picture thomas-bamford  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

x-ancin picture x-ancin  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

ichfred picture ichfred  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

xialang2012 picture xialang2012  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ